code: def compileGSUB(self):
          
          from ufo2ft.util import compileGSUB
  
          compiler = self.context.compiler
          if compiler is not None:
              # The result is cached in the compiler instance, so if another
              # writer requests one it is not compiled again.
              if hasattr(compiler, "_gsub"):
                  return compiler._gsub
  
              glyphOrder = compiler.ttFont.getGlyphOrder()
          else:
              # the 'real' glyph order doesn't matter because the table is not
              # compiled to binary, only the glyph names are used
              glyphOrder = sorted(self.context.font.keys())
  
          gsub = compileGSUB(self.context.feaFile, glyphOrder)
  
          if compiler and not hasattr(compiler, "_gsub"):
              compiler._gsub = gsub
          return gsub
docs: Compile a temporary GSUB table from the current feature file.