MCPcopy Create free account
hub / github.com/apache/tvm / _eval_expr

Function _eval_expr

python/tvm/script/parser/core/evaluator.py:501–528  ·  view source on GitHub ↗

Expression evaluation implementation for TVMScript parser. Parameters ---------- node : Union[doc.expr, doc.Expression] The root node of AST tree node of expression to evaluate. dict_globals : Optional[Dict[str, Any]] The optional global value table for expression e

(
    node: doc.expr | doc.Expression,
    dict_globals: dict[str, Any] | None,
)

Source from the content-addressed store, hash-verified

499
500
501def _eval_expr(
502 node: doc.expr | doc.Expression,
503 dict_globals: dict[str, Any] | None,
504) -> Any:
505 """Expression evaluation implementation for TVMScript parser.
506
507 Parameters
508 ----------
509 node : Union[doc.expr, doc.Expression]
510 The root node of AST tree node of expression to evaluate.
511
512 dict_globals : Optional[Dict[str, Any]]
513 The optional global value table for expression evaluation.
514
515 Returns
516 -------
517 res : Any
518 The evaluation result.
519 """
520 node = doc.from_doc(node)
521 if isinstance(node, ast.expr):
522 node = ast.Expression(body=node)
523 assert isinstance(node, ast.Expression), "Expects an ast.Expression, but gets: " + str(node)
524 if dict_globals is None:
525 dict_globals = {}
526 node = ast.fix_missing_locations(node)
527 exe = compile(node, filename="<ast>", mode="eval")
528 return eval(exe, dict_globals) # pylint: disable=eval-used
529
530
531def _eval_op(

Callers 1

_eval_exprMethod · 0.85

Calls 2

strFunction · 0.85
compileFunction · 0.50

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…