code: def _match_name(self, ker_name: str):
      m = self.kernel_name.match(ker_name)
      if _exists(m):
          name, sig_hash, suffix = m.group(1), m.group(2), m.group(3)
          return name, sig_hash, suffix
      raise LinkerError(f"{ker_name} is not a valid kernel name")
  
imports: from collections import defaultdict
  from pathlib import Path
  from typing import Sequence, Union
  from dataclasses import dataclass
label_desc: Use image node_id 3 for calling the HeaderParser obj's underlying member method code with example usage: obj._match_name(ker_name) and returns: name,  sig_hash,  suffix