Class NullSafetyExpression
Represents expression that is protected by null check, e.g. safe navigation operator (?. in C#).
Inherited Members
Namespace: DotNext.Linq.Expressions
Assembly: DotNext.Metaprogramming.dll
Syntax
public sealed class NullSafetyExpression : CustomExpression
Properties
| Edit this page View SourceBody
Declaration
public Expression Body { get; }
Property Value
Type | Description |
---|---|
Expression |
Target
Gets expression augmented by null check.
Declaration
public ParameterExpression Target { get; }
Property Value
Type | Description |
---|---|
ParameterExpression |
Type
Gets type of this expression.
Declaration
public override Type Type { get; }
Property Value
Type | Description |
---|---|
Type |
Overrides
Methods
| Edit this page View SourceCreate(Expression, Func<ParameterExpression, Expression>)
Creates a new safe navigation expression.
Declaration
public static NullSafetyExpression Create(Expression target, Func<ParameterExpression, Expression> body)
Parameters
Type | Name | Description |
---|---|---|
Expression | target | The expression that is guarded by null check. |
Func<ParameterExpression, Expression> | body | The body to be executed if |
Returns
Type | Description |
---|---|
NullSafetyExpression | The expression representing safe navigation. |
Reduce()
Translates this expression into predefined set of expressions using Lowering technique.
Declaration
public override Expression Reduce()
Returns
Type | Description |
---|---|
Expression | Translated expression. |
Overrides
| Edit this page View SourceUpdate(Expression)
Reconstructs expression with a new body.
Declaration
public NullSafetyExpression Update(Expression body)
Parameters
Type | Name | Description |
---|---|---|
Expression | body | The new body of this expression. |
Returns
Type | Description |
---|---|
NullSafetyExpression | Updated expression. |