Edit

Share via


Expression.Decrement Method

Definition

Creates a UnaryExpression that represents the decrementing of the expression by 1.

Overloads

Decrement(Expression)

Creates a UnaryExpression that represents the decrementing of the expression by 1.

Decrement(Expression, MethodInfo)

Creates a UnaryExpression that represents the decrementing of the expression by 1.

Decrement(Expression)

Source:
UnaryExpression.cs
Source:
UnaryExpression.cs
Source:
UnaryExpression.cs

Creates a UnaryExpression that represents the decrementing of the expression by 1.

public:
 static System::Linq::Expressions::UnaryExpression ^ Decrement(System::Linq::Expressions::Expression ^ expression);
public static System.Linq.Expressions.UnaryExpression Decrement (System.Linq.Expressions.Expression expression);
static member Decrement : System.Linq.Expressions.Expression -> System.Linq.Expressions.UnaryExpression
Public Shared Function Decrement (expression As Expression) As UnaryExpression

Parameters

expression
Expression

An Expression to decrement.

Returns

A UnaryExpression that represents the decremented expression.

Examples

The following code example shows how to create an expression that subtracts 1 from a given value.

// Add the following directive to your file:
// using System.Linq.Expressions;

double num = 5.5;

// This expression represents a decrement operation
// that subtracts 1 from a value.
Expression decrementExpr = Expression.Decrement(
                            Expression.Constant(num)
                        );

// Print expression.
Console.WriteLine(decrementExpr.ToString());

// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(
    Expression.Lambda<Func<double>>(decrementExpr).Compile()());

// The value of the variable did not change,
// because the expression is functional.
Console.WriteLine("object: " + num);

// This code example produces the following output:
//
// Decrement(5.5)
// 4.5
// object: 5.5
' Add the following directive to your file:
' Imports System.Linq.Expressions   

Dim num As Double = 5.5

' This expression represents a decrement operation 
' that subtracts 1 from a value. 
Dim decrementExpr As Expression = Expression.Decrement(
                            Expression.Constant(num)
                        )

' Print the expression.
Console.WriteLine(decrementExpr.ToString())

' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(
    Expression.Lambda(Of Func(Of Double))(decrementExpr).Compile()())

' The value of the variable did not change,
' because the expression is functional.
Console.WriteLine("object: " & num)

' This code example produces the following output:
'
' Decrement(5.5)
' 4.5
' object: 5.5

Remarks

This expression is functional and does not change the value of the object passed to it.

Applies to

Decrement(Expression, MethodInfo)

Source:
UnaryExpression.cs
Source:
UnaryExpression.cs
Source:
UnaryExpression.cs

Creates a UnaryExpression that represents the decrementing of the expression by 1.

public:
 static System::Linq::Expressions::UnaryExpression ^ Decrement(System::Linq::Expressions::Expression ^ expression, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.UnaryExpression Decrement (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.UnaryExpression Decrement (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo? method);
static member Decrement : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function Decrement (expression As Expression, method As MethodInfo) As UnaryExpression

Parameters

expression
Expression

An Expression to decrement.

method
MethodInfo

A MethodInfo that represents the implementing method.

Returns

A UnaryExpression that represents the decremented expression.

Remarks

This expression is functional and does not change the value of the object passed to it.

Applies to