MCPcopy Create free account
hub / github.com/DGVPSH/SlackOpen / evalBool

Method evalBool

src/main/java/net/optifine/expr/FunctionType.java:322–387  ·  view source on GitHub ↗
(IExpression[] args)

Source from the content-addressed store, hash-verified

320 }
321
322 public boolean evalBool(IExpression[] args)
323 {
324 switch (this)
325 {
326 case TRUE:
327 return true;
328
329 case FALSE:
330 return false;
331
332 case NOT:
333 return !evalBool(args, 0);
334
335 case AND:
336 return evalBool(args, 0) && evalBool(args, 1);
337
338 case OR:
339 return evalBool(args, 0) || evalBool(args, 1);
340
341 case GREATER:
342 return evalFloat(args, 0) > evalFloat(args, 1);
343
344 case GREATER_OR_EQUAL:
345 return evalFloat(args, 0) >= evalFloat(args, 1);
346
347 case SMALLER:
348 return evalFloat(args, 0) < evalFloat(args, 1);
349
350 case SMALLER_OR_EQUAL:
351 return evalFloat(args, 0) <= evalFloat(args, 1);
352
353 case EQUAL:
354 return evalFloat(args, 0) == evalFloat(args, 1);
355
356 case NOT_EQUAL:
357 return evalFloat(args, 0) != evalFloat(args, 1);
358
359 case BETWEEN:
360 float f = evalFloat(args, 0);
361 return f >= evalFloat(args, 1) && f <= evalFloat(args, 2);
362
363 case EQUALS:
364 float f1 = evalFloat(args, 0) - evalFloat(args, 1);
365 float f2 = evalFloat(args, 2);
366 return Math.abs(f1) <= f2;
367
368 case IN:
369 float f3 = evalFloat(args, 0);
370
371 for (int i = 1; i < args.length; ++i)
372 {
373 float f4 = evalFloat(args, i);
374
375 if (f3 == f4)
376 {
377 return true;
378 }
379 }

Callers 2

evalFloatMethod · 0.95
evalMethod · 0.80

Calls 4

evalFloatMethod · 0.95
warnMethod · 0.95
evalMethod · 0.95
absMethod · 0.80

Tested by

no test coverage detected