Table of Contents

Class SymbolProvider

Namespace
Albatross.CodeAnalysis
Assembly
Albatross.CodeAnalysis.dll

Provides extension methods to retrieve commonly used type symbols from a Roslyn compilation. These helpers simplify accessing framework types during code analysis and generation.

public static class SymbolProvider
Inheritance
SymbolProvider
Inherited Members

Methods

Byte(Compilation)

Gets the byte type symbol.

public static INamedTypeSymbol Byte(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Byte.

DateOnly(Compilation)

Gets the System.DateOnly type symbol.

public static INamedTypeSymbol DateOnly(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.DateOnly.

DateTime(Compilation)

Gets the DateTime type symbol.

public static INamedTypeSymbol DateTime(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.DateTime.

DateTimeOffset(Compilation)

Gets the DateTimeOffset type symbol.

public static INamedTypeSymbol DateTimeOffset(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.DateTimeOffset.

IAsyncEnumerable(Compilation)

Gets the generic definition for System.Collections.Generic.IAsyncEnumerable<T>.

public static INamedTypeSymbol IAsyncEnumerable(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Collections.Generic.IAsyncEnumerable<T>.

IEnumerable(Compilation)

Gets the non-generic IEnumerable type symbol.

public static INamedTypeSymbol IEnumerable(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Collections.IEnumerable.

IEnumerableGenericDefinition(Compilation)

Gets the generic definition for IEnumerable<T>.

public static INamedTypeSymbol IEnumerableGenericDefinition(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Collections.Generic.IEnumerable<T>.

JsonConverterAttribute(Compilation)

Gets the System.Text.Json.Serialization.JsonConverterAttribute type symbol.

public static INamedTypeSymbol JsonConverterAttribute(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Text.Json.Serialization.JsonConverterAttribute.

JsonConverterClass(Compilation)

Gets the System.Text.Json.Serialization.JsonConverter type symbol.

public static INamedTypeSymbol JsonConverterClass(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Text.Json.Serialization.JsonConverter.

JsonIgnoreAttribute(Compilation)

Gets the System.Text.Json.Serialization.JsonIgnoreAttribute type symbol.

public static INamedTypeSymbol JsonIgnoreAttribute(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Text.Json.Serialization.JsonIgnoreAttribute.

JsonStringEnumConverter(Compilation)

Gets the System.Text.Json.Serialization.JsonStringEnumConverter type symbol.

public static INamedTypeSymbol JsonStringEnumConverter(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Text.Json.Serialization.JsonStringEnumConverter.

Nullable(Compilation)

Gets the generic definition for Nullable<T>.

public static INamedTypeSymbol Nullable(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Nullable<T>.

Object(Compilation)

Gets the object type symbol.

public static INamedTypeSymbol Object(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Object.

String(Compilation)

Gets the string type symbol.

public static INamedTypeSymbol String(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.String.

TaskGenericDefinition(Compilation)

Gets the generic definition for Task<TResult>.

public static INamedTypeSymbol TaskGenericDefinition(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.Threading.Tasks.Task<T>.

TimeOnly(Compilation)

Gets the System.TimeOnly type symbol.

public static INamedTypeSymbol TimeOnly(this Compilation compilation)

Parameters

compilation Compilation

The compilation instance.

Returns

INamedTypeSymbol

The type symbol for System.TimeOnly.