code: def parse_overrides(self, overrides: List[str]) -> List[Override]:
      ret: List[Override] = []
      for override in overrides:
          try:
              parsed = self.parse_rule(override, "override")
          except HydraException as e:
              cause = e.__cause__
              if isinstance(cause, LexerNoViableAltException):
                  prefix = "LexerNoViableAltException: "
                  start = len(prefix) + cause.startIndex + 1
                  msg = f"{prefix}{override}" f"\n{'^'.rjust(start)}"
                  e.__cause__ = None
              elif isinstance(cause, RecognitionException):
                  prefix = f"{e}"
                  msg = f"{prefix}"
                  e.__cause__ = None
              else:
                  msg = f"Error parsing override '{override}'" f"\n{e}"
              raise OverrideParseException(
                  override=override,
                  message=f"{msg}"
                  f"\nSee https://hydra.cc/docs/1.2/advanced/override_grammar/basic for details",
              ) from e.__cause__
          assert isinstance(parsed, Override)
          parsed.config_loader = self.config_loader
          ret.append(parsed)
      return ret
  
file_path: hydra/hydra/core/override_parser/overrides_parser.py
imports: import sys
  from typing import Any, List, Optional
  from antlr4.error.Errors import LexerNoViableAltException, RecognitionException
  from hydra._internal.grammar import grammar_functions
  from hydra._internal.grammar.functions import Functions
  from hydra.core.config_loader import ConfigLoader
  from hydra.core.override_parser.overrides_visitor import HydraErrorListener, HydraOverrideVisitor
  from hydra.core.override_parser.types import Override
  from hydra.errors import HydraException, OverrideParseException
label_desc: Use image node_id 5 for calling the OverridesParser obj's underlying member method code with example usage: obj.parse_overrides(overrides) and returns: ret