Table of Contents

Struct SqlObjectBuilderReference<T>

Namespace
LfrlAnvil.Sql.Objects.Builders
Assembly
LfrlAnvil.Sql.Core.dll

Represents a reference between two SQL object builders.

public readonly struct SqlObjectBuilderReference<T> where T : class, ISqlObjectBuilder

Type Parameters

T

SQL object builder type.

Inherited Members

Properties

Source

Underlying reference source.

public SqlObjectBuilderReferenceSource<T> Source { get; }

Property Value

SqlObjectBuilderReferenceSource<T>

Target

Target object builder.

public T Target { get; }

Property Value

T

Methods

ToString()

Returns a string representation of this SqlObjectBuilderReference<T> instance.

[Pure]
public override string ToString()

Returns

string

String representation.

UnsafeReinterpretAs<TDestination>()

Converts this instance to another type that implements the ISqlObjectBuilder interface.

[Pure]
public SqlObjectBuilderReference<TDestination> UnsafeReinterpretAs<TDestination>() where TDestination : class, ISqlObjectBuilder

Returns

SqlObjectBuilderReference<TDestination>

New SqlObjectBuilderReference<T> instance.

Type Parameters

TDestination

SQL object builder type to convert to.

Remarks

Be careful while using this method, because it does not actually validate the type's correctness.

Operators

implicit operator SqlObjectBuilderReference<ISqlObjectBuilder>(SqlObjectBuilderReference<T>)

Converts source to the base ISqlObjectBuilder type.

[Pure]
public static implicit operator SqlObjectBuilderReference<ISqlObjectBuilder>(SqlObjectBuilderReference<T> source)

Parameters

source SqlObjectBuilderReference<T>

Source to convert.

Returns

SqlObjectBuilderReference<ISqlObjectBuilder>

New SqlObjectBuilderReference<T> instance.