code: def compile(self, ttFont):
      if self.glyphName is None:
          from fontTools import ttLib
  
          raise ttLib.TTLibError(
              "Can't compile Glyph without glyph name"
          )
          # TODO: if ttFont has no maxp, cmap etc., ignore glyph names and compile by index?
          # (needed if you just want to compile the sbix table on its own)
      self.gid = struct.pack(">H", ttFont.getGlyphID(self.glyphName))
      if self.graphicType is None:
          rawdata = b""
      else:
          rawdata = sstruct.pack(sbixGlyphHeaderFormat, self)
          if self.graphicType == "dupe":
              rawdata += struct.pack(
                  ">H", ttFont.getGlyphID(self.referenceGlyphName)
              )
          else:
              assert self.imageData is not None
              rawdata += self.imageData
      self.rawdata = rawdata
  
file_path: catboost/contrib/python/fonttools/fontTools/ttLib/tables/sbixGlyph.py
imports: from fontTools.misc import sstruct
  from fontTools.misc.textTools import readHex, safeEval
  import struct
label_desc: Use image node_id 3 for calling the Glyph obj's underlying member method code with example usage: obj.compile(ttFont) without return types