code: def setContext(self, font, feaFile, compiler=None):
          
          todo = set(self.features)
          if self.mode == "skip":
              existing = ast.findFeatureTags(feaFile)
              todo.difference_update(existing)
  
          self.context = SimpleNamespace(
              font=font, feaFile=feaFile, compiler=compiler, todo=todo
          )
  
          return self.context
docs: Populate a temporary `self.context` namespace, which is reset
          after each new call to `_write` method.
          Subclasses can override this to provide contextual information
          which depends on other data, or set any temporary attributes.
  
          The default implementation sets:
          - the current font;
          - the current FeatureFile object;
          - the current compiler instance (only present when this writer was
            instantiated from a FeatureCompiler);
          - a set of features (tags) to be generated. If self.mode is "skip",
            these are all the features which are _not_ already present.
  
          Returns the context namespace instance.