Skip to content

API Reference

A lightweight, pool-backed builder for constructing arrays. Dispose returns the backing buffer to the pool.

Extension methods for ArrayBuilder<T>.

Wrapper around StringBuilder that provides formatting and utility methods for code writing.

Disposable scope that manages code block indentation. Opens a block on creation and closes it on disposal.

Disposable scope that appends #if CONDITION. Appends #endif on disposal.

Disposable scope that temporarily changes the indentation level. Restores the original indentation on disposal.

Extension methods for adding generated source code to a generator context.

A wrapper around an array that implements IEquatable<T> for value-based equality comparison.

Provides a shared pool of HashSet<T> instances to reduce allocations.

Provides a shared pool of List<T> instances to reduce allocations.

Provides debug-only logging that writes to a log file. The file will be located in the current directory, which usually is the directory where your solution file is located.

A simple object pool that reuses instances of a reference type to reduce allocations.

A disposable scope that automatically returns a pooled object when disposed.

Provides a shared pool of Queue<T> instances to reduce allocations.

Provides a shared pool of Stack<T> instances to reduce allocations.

Extension methods for StringBuilder.

Provides a shared pool of StringBuilder instances to reduce allocations.

Extension methods for working with symbols.

Extension methods for working with syntax nodes.

Utilities for transforming variable names into a more readable form.