Show / Hide Table of Contents

Class ExpressionBuilder<TExpression>

Represents compound expression builder.

Inheritance
object
ExpressionBuilder<TExpression>
ConditionalBuilder
MatchBuilder
SwitchBuilder
TryBuilder
Implements
ISupplier<TExpression>
IFunctional<Func<TExpression>>
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: DotNext.Metaprogramming
Assembly: DotNext.Metaprogramming.dll
Syntax
public abstract class ExpressionBuilder<TExpression> : ISupplier<TExpression>, IFunctional<Func<TExpression>> where TExpression : Expression
Type Parameters
Name Description
TExpression

Type of expression to be constructed.

Remarks

Any derived expression builder is not thread-safe and event cannot be shared between threads.

Methods

| Edit this page View Source

End()

Finalizes construction of the expression and adds constructed expression as statement to the entire lexical scope.

Declaration
public void End()
Exceptions
Type Condition
InvalidOperationException

The expression has been constructed already.

| Edit this page View Source

OfType(Type)

Changes type of the expression.

Declaration
public ExpressionBuilder<TExpression> OfType(Type expressionType)
Parameters
Type Name Description
Type expressionType

The expression type.

Returns
Type Description
ExpressionBuilder<TExpression>

This builder.

Remarks

By default, type of expression is void.

| Edit this page View Source

OfType<T>()

Changes type of the expression.

Declaration
public ExpressionBuilder<TExpression> OfType<T>()
Returns
Type Description
ExpressionBuilder<TExpression>

This builder.

Type Parameters
Name Description
T

The expression type.

Implements

ISupplier<TResult>
IFunctional<TDelegate>

Extension Methods

BasicExtensions.As<T>(T)
BasicExtensions.GetUserData<T>(T)
BasicExtensions.IsBetween<T, TLowerBound, TUpperBound>(T, TLowerBound, TUpperBound)
BasicExtensions.IsOneOf<T>(T, ReadOnlySpan<T>)
ExpressionBuilder.Const<T>(T)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan, CancellationToken)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
  • Edit this page
  • View Source
☀
☾
In this article
Back to top
Supported by the .NET Foundation
☀
☾