code: def process_macros(self, content, source=None):
          
          macro_options = {'relative': self.relative, 'linenos': self.linenos}
          classes = []
          for macro_class in self.macros:
              try:
                  macro = macro_class(logger=self.logger, embed=self.embed,
                      options=macro_options)
                  content, add_classes = macro.process(content, source)
                  if add_classes:
                      classes += add_classes
              except Exception as e:
                  self.log(u"%s processing failed in %s: %s"
                           % (macro, source, e))
          return content, classes
docs: Processed all macros.