API Reference

Public types, one page each, grouped by assembly.

FoundationDB.Aspire

Aspire.FoundationDb.Client

  • FdbClientSettings — Provides the client configuration settings for connecting to a FoundationDB cluster.

Microsoft.Extensions.Hosting

OpenTelemetry.Trace

FoundationDB.Aspire.Hosting

Aspire.Hosting

Aspire.Hosting.ApplicationModel

  • FdbClusterResource — Represents a FoundationDB cluster resource in a distributed application.
  • FdbConnectionResource — Represents an externally hosted FoundationDB Cluster in a distributed application.
  • FdbVersionPolicy — Specify the versioning rules for the FoundationDB docker image
  • IFdbResource — Represents a FoundationDB resource that requires a cluster file.

FoundationDB.Client

FoundationDB.Client

FoundationDB.Client.Core

FoundationDB.Client.Native

FoundationDB.Client.Status

FoundationDB.Client.Utils

  • DebugCounters — Simple debug counters container that is used to troubleshoot alloc/free problems...

FoundationDB.DependencyInjection

FoundationDB.Filters.Logging

FoundationDB.Layers.Allocators

SnowBank.Core

SnowBank.Buffers

SnowBank.Buffers.Binary

  • BitHelpers — Helper methods to work with bits
  • ByteSize — Represents the size (in bytes) of a buffer or range of data, with its associated "natural" unit (KB, KiB, GiB, ...)
  • SizeUnit — Units for size of buffers or arrays of bytes (KB = 1_000 bytes, KiB = 1_024 bytes, ...)
  • UnsafeHelpers — Helper methods for dealing with unmanaged memory.

SnowBank.Buffers.Text

SnowBank.Collections.CacheOblivious

SnowBank.Collections.Caching

SnowBank.Collections.Generic

SnowBank.Data

SnowBank.Data.Binary

SnowBank.Data.Json

SnowBank.Data.Json.Binary

  • CrystalJsonCodec — Codecs that encodes CLR types into either database keys (ordered) or values (unordered)
  • CrystalJsonCodec<T> — Codec that encodes T instances into either database keys (ordered) or values (unordered)
  • JsonPack — Fast and compact binary JSON encoder
  • JsonValueCodec — Codec that encodes JsonValue instances into either database keys (ordered) or values (unordered)
  • Jsonb — Compact binary JSON encoder that supports partial decoding of documents
  • Jsonb.JLookupSelector — Selector that will always return the value of the element at the given path of a Jsonb document
  • Jsonb.Writer — Instance that outputs Jsonb values into a binary buffer
  • JsonbWriterOptions — Options to configure the behavior of the Jsonb parser

SnowBank.Data.Json.JPath

  • JPathArrayIndexer — Expression that represents a single element of a JSON Array
  • JPathArrayRange — Expression that represents the access to a part of a JSON Array
  • JPathBinaryOperator — Expression that applies a binary operator on two expressions, or an expression and a constant
  • JPathExpression — Base class of a node in a JPath query AST
  • JPathFilterExpression — Expression that outputs only the elements or a source expression that pass a filter
  • JPathObjectIndexer — Expression that represents a field access in a JSON Object (ex: foo['bar'])
  • JPathQuery — Represents a query in a JSON Document
  • JPathQuoteExpression — Expression that buffers the elements returned by another expression, into a single JSON Array
  • JPathSpecialToken — Expression that represents a special JPath Token (either $ or @)
  • JPathUnaryOperator — Expression that applies a unary operator onto another expression

SnowBank.Data.Tuples

SnowBank.Data.Tuples.Binary

  • ITupleFormattable — Represents a tuple that can formats its item into a string representation
  • ITuplePackable — Represents an object that can serialize itself using the Tuple Binary Encoding format
  • ITupleSpanPackable — Represents an object that can serialize itself using the Tuple Binary Encoding format
  • PrefixedTuple — Tuple that has a fixed arbitrary binary prefix
  • SlicedTuple — Lazily-evaluated tuple that was unpacked from a key
  • SpanTuple — Lazily-evaluated tuple that was unpacked from a key
  • TuPackUserType — Represent a custom user type for the TuPack encoding
  • TupleEncoder — Helper class to encode and decode tuples to and from binary buffers
  • TuplePacker<T> — Helper class for serializing and deserializing values of type T using the tuple binary format
  • TuplePackers — Helper methods used during serialization of values to the tuple binary format
  • TuplePackers.Decoder<T> — Delegate that decodes a value of type T from encoded bytes
  • TuplePackers.Encoder<T> — Delegate that writes a value of type T into a TupleWriter
  • TuplePackers.SpanEncoder<T> — Delegate that writes a value of type T into a TupleWriter
  • TupleParser — Helper class that contains low-level encoders for the tuple binary format
  • TupleReader — Reads bytes from a contiguous region of arbitrary memory
  • TupleSegmentType — Logical type of packed element of a tuple
  • TupleSpanWriter — Buffer for writing tuples into a Span<byte>
  • TupleTypes — Constants for the various tuple value types
  • TupleWriter — Writes bytes to a contiguous region of arbitrary memory

SnowBank.Data.Xml

SnowBank.Diagnostics.Contracts

  • Contract — Helper type to check for pre-requisites, invariants, assertions, ...
  • Contract.Debug — Contracts that are only evaluated in Debug builds
  • ContractException
  • Paranoid — Helper class present only in Paranoid mode, for checking pre-requisites, invariants, assertions, ...
  • ThrowHelper

SnowBank.IO

  • FastStringWriter — "Fast" version of StringWriter, that performs fewer checks, but is a good fit for specific use cases (serialization, ...)
  • PartialReadOnlyStream — Stream that exposes a readonly-only subsection of another stream Stream.
  • PartialWritableStream — Stream that exposes a writable subsection of another stream Stream.

SnowBank.IO.Hashing

SnowBank.Linq

SnowBank.Linq.Async

SnowBank.Linq.Async.Expressions

SnowBank.Linq.Async.Iterators

SnowBank.Linq.Iterators

SnowBank.Messaging

SnowBank.Messaging.Events

SnowBank.Messaging.PubSub

SnowBank.Networking

SnowBank.Numerics

SnowBank.Reactive.Disposables

  • Disposable — Helper type that can create IDisposable wrappers
  • Disposable<T> — Token that wraps any value into an IDisposable instance
  • IDisposable<T> — Type that encapsulates a value of type T, and that implements IDisposable with a customizable behavior when it is disposed.

SnowBank.Runtime

SnowBank.Runtime.Converters

SnowBank.Text

SnowBank.Text.Xml

SnowBank.Threading

SnowBank.Threading.Operations

System

  • HashCodes — Helper methods to work with hashcodes
  • Maybe — Provides a set of static methods to work with the Maybe monad, enabling functional programming patterns in C#.
  • Maybe<T> — Represents a value that may or may not be present, along with an optional error state.
  • MaybeError — Represents an error captured during a computation
  • Slice — Delimits a read-only section of a byte array
  • Slice.Comparer — Performs optimized equality and comparison checks on Slices
  • Slice.Pinned — Structure that keeps buffers from moving in memory during GC collections
  • SliceExtensions — Helper methods for Slice
  • SliceMarshal — Advanced or unsafe operations on Slice
  • SliceOwner — A container for rented Slice that can be returned into a ArrayPool after it is not needed anymore.
  • SpanDecoderExtensions — Helper methods to help decode the content of spans
  • SystemStringExtensions
  • Uuid128 — Represents an RFC 4122 compliant 128-bit UUID
  • Uuid128.Comparer — Instance of this times can be used to test Uuid128 for equality and ordering
  • Uuid48 — Represents a 48-bit UUID that is stored in high-endian format in the output
  • Uuid48.Comparer — Compares Uuid48 instances for equality and ordering
  • Uuid48.RandomGenerator — Generates 48-bit UUIDs using a secure random number generator
  • Uuid64 — Represents a 64-bit UUID that is stored in high-endian format in the output
  • Uuid64.Comparer — Compares Uuid64 instances for equality and ordering
  • Uuid64.RandomGenerator — Generates 64-bit UUIDs using a secure random number generator
  • Uuid80 — Represents an 80-bit UUID that is stored in high-endian format in the output
  • Uuid80.Comparer — Instance of this times can be used to test Uuid80 for equality and ordering
  • Uuid80.RandomGenerator — Generates 80-bit UUIDs using a secure random number generator
  • Uuid96 — Represents a 96-bit UUID that is stored in high-endian format in the output
  • Uuid96.Comparer — Instance of this times can be used to test Uuid96 for equality and ordering
  • Uuid96.RandomGenerator — Generates 96-bit UUIDs using a secure random number generator
  • VersionStamp — VersionStamp
  • VersionStamp.Comparer — Compares VersionStamp instances for equality and ordering

System.Collections.Generic

  • IOrderedAsyncQuery<T> — Provides asynchronous iteration over the results of a query from a remote source.

System.IO.Hashing

System.Text