|
.oO SearXNG Developer Documentation Oo.
|
Classes | |
| class | SXNGPlugin |
Functions | |
| int | _compare (list[ast.cmpop] ops, list[int|float] values) |
| _eval_expr (expr) | |
| _eval (node) | |
| handler (multiprocessing.Queue q, func, args, **kwargs) | |
Variables | |
| dict | operators |
| dict | math_constants |
| mp_fork = multiprocessing.get_context("fork") | |
Calculate mathematical expressions using :py:obj:`ast.parse` (mode="eval").
|
protected |
2 < 3 becomes ops=[ast.Lt] and values=[2,3] 2 < 3 <= 4 becomes ops=[ast.Lt, ast.LtE] and values=[2,3, 4]
Definition at line 120 of file calculator.py.
Referenced by _eval().
|
protected |
Definition at line 209 of file calculator.py.
References _compare(), and _eval().
Referenced by _eval(), and _eval_expr().
|
protected |
Evaluates the given textual expression.
Returns a tuple of (numericResult, isBooleanResult).
>>> _eval_expr('2^6')
64, False
>>> _eval_expr('2**6')
64, False
>>> _eval_expr('1 + 2*3**(4^5) / (6 + -7)')
-5.0, False
>>> _eval_expr('1 < 3')
1, True
>>> _eval_expr('5 < 3')
0, True
>>> _eval_expr('17 == 11+1+5 == 7+5+5')
1, True
Definition at line 181 of file calculator.py.
References _eval().
| searx.plugins.calculator.handler | ( | multiprocessing.Queue | q, |
| func, | |||
| args, | |||
| ** | kwargs ) |
Definition at line 228 of file calculator.py.
| dict searx.plugins.calculator.math_constants |
Definition at line 168 of file calculator.py.
| searx.plugins.calculator.mp_fork = multiprocessing.get_context("fork") |
Definition at line 178 of file calculator.py.
| dict searx.plugins.calculator.operators |
Definition at line 151 of file calculator.py.