Class NewArrayExpressionSlim
Lightweight representation of array creation expression tree nodes.
Inherited Members
Namespace: System.Linq.Expressions
Assembly: Nuqleon.Linq.Expressions.Bonsai.dll
Syntax
public abstract class NewArrayExpressionSlim : ExpressionSlim
  Properties
ElementType
Gets the type of the elements in the array.
Declaration
public TypeSlim ElementType { get; }
  Property Value
| Type | Description | 
|---|---|
| TypeSlim | 
Expressions
Gets the expressions used by the array initializer. Depending on the node type, these expressions either represent the array bounds or the elements being initialized.
Declaration
public ReadOnlyCollection<ExpressionSlim> Expressions { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<ExpressionSlim> | 
Methods
Accept(ExpressionSlimVisitor)
Accepts the expression tree node in the specified visitor.
Declaration
protected override ExpressionSlim Accept(ExpressionSlimVisitor visitor)
  Parameters
| Type | Name | Description | 
|---|---|---|
| ExpressionSlimVisitor | visitor | Visitor to process the current expression tree node.  | 
      
Returns
| Type | Description | 
|---|---|
| ExpressionSlim | Result of visiting the node.  | 
      
Overrides
Accept<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget>(ExpressionSlimVisitor<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget>)
Accepts the expression tree node in the specified visitor.
Declaration
protected override TExpression Accept<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget>(ExpressionSlimVisitor<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget> visitor)
    where TLambdaExpression : TExpression where TParameterExpression : TExpression where TNewExpression : TExpression where TMemberAssignment : TMemberBinding where TMemberListBinding : TMemberBinding where TMemberMemberBinding : TMemberBinding
  Parameters
| Type | Name | Description | 
|---|---|---|
| ExpressionSlimVisitor<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget> | visitor | Visitor to process the current expression tree node.  | 
      
Returns
| Type | Description | 
|---|---|
| TExpression | Result of visiting the node.  | 
      
Type Parameters
| Name | Description | 
|---|---|
| TExpression | Target type for expressions.  | 
      
| TLambdaExpression | Target type for lambda expressions. This type has to derive from TExpression.  | 
      
| TParameterExpression | Target type for parameter expressions. This type has to derive from TExpression.  | 
      
| TNewExpression | Target type for new expressions. This type has to derive from TExpression.  | 
      
| TElementInit | Target type for element initializers.  | 
      
| TMemberBinding | Target type for member bindings.  | 
      
| TMemberAssignment | Target type for member assignments. This type has to derive from TMemberBinding.  | 
      
| TMemberListBinding | Target type for member list bindings. This type has to derive from TMemberBinding.  | 
      
| TMemberMemberBinding | Target type for member member bindings. This type has to derive from TMemberBinding.  | 
      
| TCatchBlock | Target type for catch blocks.  | 
      
| TSwitchCase | Target type for switch cases.  | 
      
| TLabelTarget | Target type for label targets.  | 
      
Overrides
Update(ReadOnlyCollection<ExpressionSlim>)
Creates a new expression that is like this one, but using the supplied children. If all of the children are the same, it will return this expression.
Declaration
public abstract NewArrayExpressionSlim Update(ReadOnlyCollection<ExpressionSlim> expressions)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<ExpressionSlim> | expressions | The Expressions child node of the result.  | 
      
Returns
| Type | Description | 
|---|---|
| NewArrayExpressionSlim | This expression if no children are changed or an expression with the updated children.  |