Class CallExpression
- Namespace
- xFunc.Maths.Expressions
- Assembly
- xFunc.Maths.dll
Represent the expression to call function.
public class CallExpression : IExpression, IEquatable<CallExpression>
- Inheritance
-
CallExpression
- Implements
- Inherited Members
- Extension Methods
Constructors
CallExpression(IExpression, ImmutableArray<IExpression>)
Initializes a new instance of the CallExpression class.
public CallExpression(IExpression function, ImmutableArray<IExpression> parameters)
Parameters
function
IExpressionThe expression that returns function.
parameters
ImmutableArray<IExpression>The list of parameters of the function.
CallExpression(IExpression, IExpression)
Initializes a new instance of the CallExpression class.
public CallExpression(IExpression function, IExpression argument)
Parameters
function
IExpressionThe expression that returns function.
argument
IExpressionThe parameter of the function.
CallExpression(IExpression, IExpression, IExpression)
Initializes a new instance of the CallExpression class.
public CallExpression(IExpression function, IExpression argument1, IExpression argument2)
Parameters
function
IExpressionThe expression that returns function.
argument1
IExpressionThe first parameter of the function.
argument2
IExpressionThe second parameter of the function.
Properties
Function
Gets the expression that returns the function.
public IExpression Function { get; }
Property Value
Parameters
Gets a list of parameters of the function.
public ImmutableArray<IExpression> Parameters { get; }
Property Value
Methods
Analyze<TResult>(IAnalyzer<TResult>)
Analyzes the current expression.
public TResult Analyze<TResult>(IAnalyzer<TResult> analyzer)
Parameters
analyzer
IAnalyzer<TResult>The analyzer.
Returns
- TResult
The analysis result.
Type Parameters
TResult
The type of the result.
Analyze<TResult, TContext>(IAnalyzer<TResult, TContext>, TContext)
Analyzes the current expression.
public TResult Analyze<TResult, TContext>(IAnalyzer<TResult, TContext> analyzer, TContext context)
Parameters
analyzer
IAnalyzer<TResult, TContext>The analyzer.
context
TContextThe context.
Returns
- TResult
The analysis result.
Type Parameters
TResult
The type of the result.
TContext
The type of additional parameter for analyzer.
Clone(IExpression?, ImmutableArray<IExpression>?)
Clones this instance of the IExpression.
public IExpression Clone(IExpression? function = null, ImmutableArray<IExpression>? parameters = null)
Parameters
function
IExpressionThe expression that returns function.
parameters
ImmutableArray<IExpression>?The list of parameters of the function.
Returns
- IExpression
Returns the new instance of IExpression that is a clone of this instance.
Equals(object?)
Determines whether the specified object is equal to the current object.
public override bool Equals(object? obj)
Parameters
obj
objectThe object to compare with the current object.
Returns
Equals(CallExpression?)
Indicates whether the current object is equal to another object of the same type.
public bool Equals(CallExpression? other)
Parameters
other
CallExpressionAn object to compare with this object.
Returns
Execute()
Executes this expression. Don't use this method if your expression has variables or user-functions.
public object Execute()
Returns
- object
A result of the execution.
Execute(ExpressionParameters?)
Executes this expression.
public object Execute(ExpressionParameters? parameters)
Parameters
parameters
ExpressionParametersAn object that contains all parameters and functions for expressions.
Returns
- object
A result of the execution.
- See Also
ToString()
Returns a string that represents the current object.
public override string ToString()
Returns
- string
A string that represents the current object.
ToString(IFormatter)
Returns a string that represents this instance.
public string ToString(IFormatter formatter)
Parameters
formatter
IFormatterThe formatter.