@@ -242,56 +242,56 @@ protected enum TryBlockEvaluatedState
242242 {
243243 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
244244 {
245- { ExpressionOperator . UnaryPlus , ( dynamic _ , dynamic right ) => + right } ,
246- { ExpressionOperator . UnaryMinus , ( dynamic _ , dynamic right ) => - right } ,
247- { ExpressionOperator . LogicalNegation , ( dynamic _ , dynamic right ) => ! right } ,
248- { ExpressionOperator . BitwiseComplement , ( dynamic _ , dynamic right ) => ~ right } ,
249- { ExpressionOperator . Cast , ( dynamic left , dynamic right ) => ChangeType ( right , left ) } ,
245+ { ExpressionOperator . UnaryPlus , ( _ , right ) => + right } ,
246+ { ExpressionOperator . UnaryMinus , ( _ , right ) => - right } ,
247+ { ExpressionOperator . LogicalNegation , ( _ , right ) => ! right } ,
248+ { ExpressionOperator . BitwiseComplement , ( _ , right ) => ~ right } ,
249+ { ExpressionOperator . Cast , ( left , right ) => ChangeType ( right , left ) } ,
250250 } ,
251251 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
252252 {
253- { ExpressionOperator . Multiply , ( dynamic left , dynamic right ) => left * right } ,
254- { ExpressionOperator . Divide , ( dynamic left , dynamic right ) => left / right } ,
255- { ExpressionOperator . Modulo , ( dynamic left , dynamic right ) => left % right } ,
253+ { ExpressionOperator . Multiply , ( left , right ) => left * right } ,
254+ { ExpressionOperator . Divide , ( left , right ) => left / right } ,
255+ { ExpressionOperator . Modulo , ( left , right ) => left % right } ,
256256 } ,
257257 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
258258 {
259- { ExpressionOperator . Plus , ( dynamic left , dynamic right ) => left + right } ,
260- { ExpressionOperator . Minus , ( dynamic left , dynamic right ) => left - right } ,
259+ { ExpressionOperator . Plus , ( left , right ) => left + right } ,
260+ { ExpressionOperator . Minus , ( left , right ) => left - right } ,
261261 } ,
262262 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
263263 {
264- { ExpressionOperator . ShiftBitsLeft , ( dynamic left , dynamic right ) => left << right } ,
265- { ExpressionOperator . ShiftBitsRight , ( dynamic left , dynamic right ) => left >> right } ,
264+ { ExpressionOperator . ShiftBitsLeft , ( left , right ) => left << right } ,
265+ { ExpressionOperator . ShiftBitsRight , ( left , right ) => left >> right } ,
266266 } ,
267267 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
268268 {
269- { ExpressionOperator . Lower , ( dynamic left , dynamic right ) => left < right } ,
270- { ExpressionOperator . Greater , ( dynamic left , dynamic right ) => left > right } ,
271- { ExpressionOperator . LowerOrEqual , ( dynamic left , dynamic right ) => left <= right } ,
272- { ExpressionOperator . GreaterOrEqual , ( dynamic left , dynamic right ) => left >= right } ,
273- { ExpressionOperator . Is , ( dynamic left , dynamic right ) => left != null && ( ( ( ClassOrEnumType ) right ) . Type ) . IsAssignableFrom ( left . GetType ( ) ) } ,
269+ { ExpressionOperator . Lower , ( left , right ) => left < right } ,
270+ { ExpressionOperator . Greater , ( left , right ) => left > right } ,
271+ { ExpressionOperator . LowerOrEqual , ( left , right ) => left <= right } ,
272+ { ExpressionOperator . GreaterOrEqual , ( left , right ) => left >= right } ,
273+ { ExpressionOperator . Is , ( left , right ) => left != null && ( ( ( ClassOrEnumType ) right ) . Type ) . IsAssignableFrom ( left . GetType ( ) ) } ,
274274 } ,
275275 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
276276 {
277- { ExpressionOperator . Equal , ( dynamic left , dynamic right ) => left == right } ,
278- { ExpressionOperator . NotEqual , ( dynamic left , dynamic right ) => left != right } ,
277+ { ExpressionOperator . Equal , ( left , right ) => left == right } ,
278+ { ExpressionOperator . NotEqual , ( left , right ) => left != right } ,
279279 } ,
280280 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
281281 {
282- { ExpressionOperator . LogicalAnd , ( dynamic left , dynamic right ) => left & right } ,
282+ { ExpressionOperator . LogicalAnd , ( left , right ) => left & right } ,
283283 } ,
284284 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
285285 {
286- { ExpressionOperator . LogicalXor , ( dynamic left , dynamic right ) => left ^ right } ,
286+ { ExpressionOperator . LogicalXor , ( left , right ) => left ^ right } ,
287287 } ,
288288 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
289289 {
290- { ExpressionOperator . LogicalOr , ( dynamic left , dynamic right ) => left | right } ,
290+ { ExpressionOperator . LogicalOr , ( left , right ) => left | right } ,
291291 } ,
292292 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
293293 {
294- { ExpressionOperator . ConditionalAnd , ( dynamic left , dynamic right ) => {
294+ { ExpressionOperator . ConditionalAnd , ( left , right ) => {
295295 if ( left is BubbleExceptionContainer leftExceptionContainer )
296296 {
297297 leftExceptionContainer . Throw ( ) ;
@@ -314,7 +314,7 @@ protected enum TryBlockEvaluatedState
314314 } ,
315315 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
316316 {
317- { ExpressionOperator . ConditionalOr , ( dynamic left , dynamic right ) => {
317+ { ExpressionOperator . ConditionalOr , ( left , right ) => {
318318 if ( left is BubbleExceptionContainer leftExceptionContainer )
319319 {
320320 leftExceptionContainer . Throw ( ) ;
@@ -337,7 +337,7 @@ protected enum TryBlockEvaluatedState
337337 } ,
338338 new Dictionary < ExpressionOperator , Func < dynamic , dynamic , object > > ( )
339339 {
340- { ExpressionOperator . NullCoalescing , ( dynamic left , dynamic right ) => left ?? right } ,
340+ { ExpressionOperator . NullCoalescing , ( left , right ) => left ?? right } ,
341341 } ,
342342 } ;
343343
@@ -3206,7 +3206,7 @@ protected virtual object ProcessStack(Stack<object> stack)
32063206 . Select ( e => e is NullConditionalNullValue ? null : e )
32073207 . ToList ( ) ;
32083208
3209- OperatorsEvaluations . ToList ( ) . ForEach ( ( IDictionary < ExpressionOperator , Func < dynamic , dynamic , object > > operatorEvalutationsDict ) =>
3209+ OperatorsEvaluations . ToList ( ) . ForEach ( operatorEvalutationsDict =>
32103210 {
32113211 for ( int i = list . Count - 1 ; i >= 0 ; i -- )
32123212 {
@@ -3296,11 +3296,11 @@ void EvaluateFirstPreviousUnaryOp(int j)
32963296 {
32973297 list [ i ] = operatorEvalutationsDict [ eOp ] ( left , right ) ;
32983298
3299- if ( left is BubbleExceptionContainer && right is string or null )
3299+ if ( left is BubbleExceptionContainer && ( right == null || right is string ) )
33003300 {
33013301 list [ i ] = left ; //Bubble up the causing error
33023302 }
3303- else if ( right is BubbleExceptionContainer && left is string or null )
3303+ else if ( right is BubbleExceptionContainer && ( left is string || left is null ) )
33043304 {
33053305 list [ i ] = right ; //Bubble up the causing error
33063306 }
@@ -3481,7 +3481,7 @@ protected virtual bool GetLambdaExpression(string expression, Stack<object> stac
34813481
34823482 bool inScriptAtDeclaration = inScript ;
34833483
3484- stack . Push ( new InternalDelegate ( ( object [ ] args ) =>
3484+ stack . Push ( new InternalDelegate ( args =>
34853485 {
34863486 var vars = new Dictionary < string , object > ( variables ) ;
34873487
0 commit comments