class_docstr: Expression evaluator for TVMScript parser.
  
  Parameters
  ----------
  parser : Parser
      The parser bound with the evaluator.
  
  value_table : Dict[str, Any]
      The value table for expression evaluation.
  
  new_value_count : int
      The count for intermediate result added during evaluation.
docstr: The doc AST boolean operator node evaluating method.
  
  Parameters
  ----------
  fields : Dict[str, Any]
      The dictionary of boolean operation information,
      e.g., operator types, operand values.
  
  Returns
  -------
  res : Any
      The evaluation result.
docstr_tok: ["The","doc","AST","boolean","operator","node","evaluating","method",".","Parameters","--","--","--","--","--","fields",":","Dict","[","str",",","Any","]","The","dictionary","of","boolean","operation","information",",","e.g.",",","operator","types",",","operand","values",".","Returns","--","--","--","-","res",":","Any","The","evaluation","result","."]
code: def _eval_bool_op(self, fields: Dict[str, Any]) -> Any:
      """The doc AST boolean operator node evaluating method.
  
      Parameters
      ----------
      fields : Dict[str, Any]
          The dictionary of boolean operation information,
          e.g., operator types, operand values.
  
      Returns
      -------
      res : Any
          The evaluation result.
      """
      op = fields["op"]
      if not isinstance(op, (doc.And, doc.Or)):
          raise TypeError(f"Unexpected operator: {op}")
      value = self._eval_expr(fields["values"][0])
      for rhs in fields["values"][1:]:
          value = _eval_op(op, values=[value, self._eval_expr(rhs)])
      return value
  
imports: import ast
  from typing import TYPE_CHECKING, Any, Callable, Dict, List, Optional, Type, Union
  from .None import dispatch, doc
  from .error import ParserError
label_desc: Use image node_id 6 for calling the ExprEvaluator obj's underlying member method code with example usage: obj._eval_bool_op(fields) and returns: value