def process_directives(directives)
        directives.each do |line_number, name, *args|
          begin
            send("process_#{name}_directive", *args)
          rescue Exception => e
            e.set_backtrace(["#{@filename}:#{line_number}"] + e.backtrace)
            raise e
          end
        end
      end
def process_directives(directives)
        directives.each do |line_number, name, *args|
          begin
            send("process_#{name}_directive", *args)
          rescue Exception => e
            e.set_backtrace(["#{@filename}:#{line_number}"] + e.backtrace)
            raise e
          end
        end
      end
Gathers comment directives in the source and processes them.
 Any directive method matching `process_*_directive` will
 automatically be available. This makes it easy to extend the
 processor.

 To implement a custom directive called `require_glob`, subclass
 `Sprockets::DirectiveProcessor`, then add a method called
 `process_require_glob_directive`.

     class DirectiveProcessor < Sprockets::DirectiveProcessor
       def process_require_glob_directive(glob)
         Dir["#{dirname}/#{glob}"].sort.each do |filename|
           require(filename)
         end
       end
     end

 Replace the current processor on the environment with your own:

     env.unregister_processor('text/css', Sprockets::DirectiveProcessor)
     env.register_processor('text/css', DirectiveProcessor)