src/CompilerContext.php
public function addCompiler($compiler) {
        if($compiler instanceof CompilerFactoryInterface || $compiler instanceof CompilerInterface) {
            $this->compilers[] = $compiler;
            $this->orderedCompilers = NULL;
        } else
            throw new CompilerException("Can only add objects that implement CompilerInterface or CompilerFactoryInterface to context");
    }
public function addCompiler($compiler) {
        if($compiler instanceof CompilerFactoryInterface || $compiler instanceof CompilerInterface) {
            $this->compilers[] = $compiler;
            $this->orderedCompilers = NULL;
        } else
            throw new CompilerException("Can only add objects that implement CompilerInterface or CompilerFactoryInterface to context");
    }
Makes a compiler ready to execute

@param CompilerInterface|CompilerFactoryInterface $compiler