Show / Hide Table of Contents

Class ValueTupleBuilder

Represents value tuple builder with arbitrary number of tuple items.

Inheritance
Object
ValueTupleBuilder
Implements
IEnumerable<Type>
IEnumerable
Namespace: DotNext.Runtime.CompilerServices
Assembly: DotNext.Metaprogramming.dll
Syntax
public sealed class ValueTupleBuilder : Disposable, IEnumerable<Type>, IEnumerable

Properties

| Improve this Doc View Source

Count

Number of elements in the tuple.

Declaration
public int Count { get; }
Property Value
Type Description
Int32

Methods

| Improve this Doc View Source

Add(Type)

Adds a new component into tuple.

Declaration
public void Add(Type itemType)
Parameters
Type Name Description
Type itemType

The type of the tuple component.

| Improve this Doc View Source

Add<T>()

Adds a new component into tuple.

Declaration
public void Add<T>()
Type Parameters
Name Description
T

The type of the tuple component.

| Improve this Doc View Source

Build()

Constructs value tuple.

Declaration
public Type Build()
Returns
Type Description
Type

Value tuple.

| Improve this Doc View Source

Build<TExpression>(Func<Type, TExpression>, out TExpression)

Constructs expression tree based on value tuple type.

Declaration
public MemberExpression[] Build<TExpression>(Func<Type, TExpression> expressionFactory, out TExpression expression)

    where TExpression : Expression
Parameters
Type Name Description
Func<Type, TExpression> expressionFactory

A function accepting value tuple type and returning expression tree.

TExpression expression

Constructed expression.

Returns
Type Description
MemberExpression[]

Sorted array of value tuple type components.

Type Parameters
Name Description
TExpression

Type of expression tree.

| Improve this Doc View Source

Dispose(Boolean)

Releases all managed resources associated with this builder.

Declaration
protected override void Dispose(bool disposing)
Parameters
Type Name Description
Boolean disposing

true if called from ; otherwise, false.

| Improve this Doc View Source

GetEnumerator()

Returns an enumerator over all tuple components.

Declaration
public IEnumerator<Type> GetEnumerator()
Returns
Type Description
IEnumerator<Type>

An enumerator over all tuple components.

Explicit Interface Implementations

| Improve this Doc View Source

IEnumerable.GetEnumerator()

Declaration
IEnumerator IEnumerable.GetEnumerator()
Returns
Type Description
IEnumerator

Implements

System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable

Extension Methods

AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireUpgradeableReadLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireUpgradeableReadLockAsync<T>(T, CancellationToken)
ObjectExtensions.GetUserData<T>(T)
ObjectExtensions.IsOneOf<T>(T, IEnumerable<T>)
ObjectExtensions.IsOneOf<T>(T, T[])
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, Func<T, TResult1>, Func<T, TResult2>, out TResult1, out TResult2)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, ValueFunc<T, TResult1>, ValueFunc<T, TResult2>, out TResult1, out TResult2)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, Func<T, TResult1>, Func<T, TResult2>)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, ValueFunc<T, TResult1>, ValueFunc<T, TResult2>)
ObjectExtensions.As<T>(T)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
Sequence.ToAsyncEnumerable<T>(IEnumerable<T>)
Sequence.GetAsyncEnumerator<T>(IEnumerable<T>, CancellationToken)
Sequence.SequenceHashCode(IEnumerable<Object>, Boolean)
Sequence.ForEach<T>(IEnumerable<T>, Action<T>)
Sequence.ForEach<T>(IEnumerable<T>, ValueAction<T>)
Sequence.ForEachAsync<T>(IEnumerable<T>, Func<T, CancellationToken, ValueTask>, CancellationToken)
Sequence.ForEachAsync<T>(IEnumerable<T>, ValueFunc<T, CancellationToken, ValueTask>, CancellationToken)
Sequence.FirstOrEmpty<T>(IEnumerable<T>)
Sequence.FirstOrEmpty<T>(IEnumerable<T>, ValueFunc<T, Boolean>)
Sequence.FirstOrEmpty<T>(IEnumerable<T>, Predicate<T>)
Sequence.ElementAt<T>(IEnumerable<T>, Int32, out T)
Sequence.SkipNulls<T>(IEnumerable<T>)
Sequence.ToString<T>(IEnumerable<T>, String, String)
Sequence.Prepend<T>(IEnumerable<T>, T[])
Sequence.Append<T>(IEnumerable<T>, T[])
ExpressionBuilder.Const<T>(T)

See Also

ValueTuple
Tuples
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX