| 
<?php
 /*
 Copyright (c) 2009 hamcrest.org
 */
 require __DIR__ . '/../vendor/autoload.php';
 
 /*
 * Generates the Hamcrest\Matchers factory class and factory functions
 * from the @factory doctags in the various matchers.
 */
 
 define('GENERATOR_BASE', __DIR__);
 define('HAMCREST_BASE', realpath(dirname(GENERATOR_BASE) . DIRECTORY_SEPARATOR . 'hamcrest'));
 
 define('GLOBAL_FUNCTIONS_FILE', HAMCREST_BASE . DIRECTORY_SEPARATOR . 'Hamcrest.php');
 define('STATIC_MATCHERS_FILE', HAMCREST_BASE . DIRECTORY_SEPARATOR . 'Hamcrest' . DIRECTORY_SEPARATOR . 'Matchers.php');
 
 set_include_path(
 implode(
 PATH_SEPARATOR,
 array(
 GENERATOR_BASE,
 HAMCREST_BASE,
 get_include_path()
 )
 )
 );
 
 @unlink(GLOBAL_FUNCTIONS_FILE);
 @unlink(STATIC_MATCHERS_FILE);
 
 $generator = new FactoryGenerator(HAMCREST_BASE . DIRECTORY_SEPARATOR . 'Hamcrest');
 $generator->addFactoryFile(new StaticMethodFile(STATIC_MATCHERS_FILE));
 $generator->addFactoryFile(new GlobalFunctionFile(GLOBAL_FUNCTIONS_FILE));
 $generator->generate();
 $generator->write();
 
 |