/// <summary> /// Exec the function call, return a bool value. /// can any, one or more parameters. /// </summary> /// <param name="exprExecResult"></param> /// <param name="functionToCallMapper"></param> /// <param name="exprExecFunctionCallBool"></param> /// <param name="listExprExecParam"></param> /// <param name="exprExecBase"></param> /// <returns></returns> public bool Exec(ExecResult exprExecResult, ExprExecFunctionCallInt exprExecFunctionCallInt, List <ExpressionExecBase> listExprExecParam, out ExpressionExecBase exprExecBase) { exprExecBase = null; int res; bool caseManaged; if (!ExecFuncRetInt_Params(exprExecResult, exprExecFunctionCallInt, listExprExecParam, out caseManaged, out res)) { // an error occurs return(false); } if (!caseManaged) { exprExecResult.AddErrorExec(ErrorCode.ExpressionTypeNotYetImplemented, "Type", "FunctionCall"); return(false); } // execute the function linked to the functionCall found in the expression exprExecFunctionCallInt.Value = res; exprExecBase = exprExecFunctionCallInt; return(true); }
//====================================================================== #region Private methods. /// <summary> /// Execute the function code attached to the function call. /// /// </summary> /// <param name="exprExecResult"></param> /// <param name="exprExecFunctionCallBool"></param> /// <param name="listExprExecParam"></param> /// <param name="exprExecBase"></param> /// <returns></returns> private bool ExecFuncRetInt_Params(ExecResult exprExecResult, ExprExecFunctionCallInt exprExecFunctionCallInt, List <ExpressionExecBase> listExprExecParam, out bool caseManaged, out int res) { caseManaged = false; res = 0; // not enought or too many parameter //if (!CheckParamsCount(exprExecResult, listExprExecParam, 1)) // return false; try { // check the parameters, according to the definition if (!CheckParams(exprExecResult, exprExecFunctionCallInt.FunctionToCallMapper, listExprExecParam)) { return(false); } //===========================RetInt, any parameter if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt.Invoke(); caseManaged = true; return(true); } //===========================RetInt, one parameter if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool.Invoke((listExprExecParam[0] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int.Invoke((listExprExecParam[0] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String.Invoke((listExprExecParam[0] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetBool_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value); caseManaged = true; return(true); } //===========================RetInt, two parameters if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Bool.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Int.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_String.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Double.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Bool.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Int.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_String.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Double.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Bool.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Int.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_String.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Double.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Bool.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Int.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_String.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Double.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueDouble).Value); caseManaged = true; return(true); } //===========================RetInt, 3 parameters if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Bool_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Bool_Bool.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Bool_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Bool_Int.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Bool_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Bool_String.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Bool_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Bool_Double.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Int_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Int_Bool.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Int_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Int_Int.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Int_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Int_String.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Int_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Int_Double.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_String_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_String_Bool.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_String_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_String_Int.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_String_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_String_String.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_String_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_String_Double.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Double_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Double_Bool.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Double_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Double_Int.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Double_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Double_String.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Bool_Double_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Bool_Double_Double.Invoke((listExprExecParam[0] as ExprExecValueBool).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Bool_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Bool_Bool.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Bool_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Bool_Int.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Bool_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Bool_String.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Bool_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Bool_Double.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Int_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Int_Bool.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Int_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Int_Int.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Int_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Int_String.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Int_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Int_Double.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_String_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_String_Bool.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_String_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_String_Int.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_String_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_String_String.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_String_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_String_Double.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Double_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Double_Bool.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Double_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Double_Int.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Double_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Double_String.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Int_Double_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Int_Double_Double.Invoke((listExprExecParam[0] as ExprExecValueInt).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Bool_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Bool_Bool.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Bool_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Bool_Int.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Bool_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Bool_String.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Bool_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Bool_Double.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Int_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Int_Bool.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Int_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Int_Int.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Int_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Int_String.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Int_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Int_Double.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_String_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_String_Bool.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_String_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_String_Int.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_String_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_String_String.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_String_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_String_Double.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Double_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Double_Bool.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Double_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Double_Int.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Double_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Double_String.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_String_Double_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_String_Double_Double.Invoke((listExprExecParam[0] as ExprExecValueString).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Bool_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Bool_Bool.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Bool_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Bool_Int.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Bool_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Bool_String.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Bool_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Bool_Double.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueBool).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Int_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Int_Bool.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Int_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Int_Int.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Int_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Int_String.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Int_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Int_Double.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueInt).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_String_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_String_Bool.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_String_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_String_Int.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_String_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_String_String.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_String_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_String_Double.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueString).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Double_Bool) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Double_Bool.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueBool).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Double_Int) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Double_Int.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueInt).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Double_String) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Double_String.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueString).Value); caseManaged = true; return(true); } if (exprExecFunctionCallInt.FunctionToCallMapper.MethodSignature == MethodSignatureType.RetInt_Double_Double_Double) { res = exprExecFunctionCallInt.FunctionToCallMapper.FuncInt_Double_Double_Double.Invoke((listExprExecParam[0] as ExprExecValueDouble).Value, (listExprExecParam[1] as ExprExecValueDouble).Value, (listExprExecParam[2] as ExprExecValueDouble).Value); caseManaged = true; return(true); } // err, not managed or not yet implemented return(false); } catch (Exception e) { // error occurs on executing the function return(AddErrorExecFailed(exprExecResult, e)); } }