## org.plovr
Class CompilerPassFactory

    java.lang.Object
      org.plovr.CompilerPassFactory

    public class CompilerPassFactory

extends java.lang.Object

`CompilerPassFactory` instantiates `CompilerPass`es using reflection, based on the class names that are provided to the "custom-passes" option in a plovr config.

Author:
  bolinfest@gmail.com (Michael Bolin)

Constructor Summary
`CompilerPassFactory(java.lang.Class<?> clazz)`

Method Summary
`com.google.javascript.jscomp.CompilerPass` `createCompilerPass(com.google.javascript.jscomp.AbstractCompiler compiler, Config config)` Creates an instance of the `CompilerPass` that this factory is designed to produce.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CompilerPassFactory

    public CompilerPassFactory(java.lang.Class<?> clazz)

Parameters:
  `clazz` - a class that implements `CompilerPass` that will be instantiated by this factory

Method Detail

### createCompilerPass

    public com.google.javascript.jscomp.CompilerPass createCompilerPass(com.google.javascript.jscomp.AbstractCompiler compiler,
                                                                        Config config)

  Creates an instance of the `CompilerPass` that this factory is designed to produce. It does so via reflection, using the first constructor it finds that matches one of the following signatures (in priority order):
  - `CompilerPass(AbstractCompiler, Config)`
  - `CompilerPass(AbstractCompiler)`
  - `CompilerPass()`