public addVisitor ( gossi\codegen\parser\visitor\ParserVisitorInterface $visitor ) | ||
$visitor | gossi\codegen\parser\visitor\ParserVisitorInterface |
/** * Creates a PHP interface from file * * @param string $filename * @return PhpInterface */ public static function fromFile($filename) { $interface = new PhpInterface(); $parser = new FileParser($filename); $parser->addVisitor(new InterfaceParserVisitor($interface)); $parser->addVisitor(new MethodParserVisitor($interface)); $parser->addVisitor(new ConstantParserVisitor($interface)); $parser->parse(); return $interface; }
/** * Creates a PHP class from file * * @param string $filename * @return PhpClass */ public static function fromFile($filename) { $class = new PhpClass(); $parser = new FileParser($filename); $parser->addVisitor(new ClassParserVisitor($class)); $parser->addVisitor(new MethodParserVisitor($class)); $parser->addVisitor(new ConstantParserVisitor($class)); $parser->addVisitor(new PropertyParserVisitor($class)); $parser->parse(); return $class; }
/** * Creates a PHP trait from a file * * @param string $filename * @return PhpTrait */ public static function fromFile($filename) { $trait = new PhpTrait(); $parser = new FileParser($filename); $parser->addVisitor(new TraitParserVisitor($trait)); $parser->addVisitor(new MethodParserVisitor($trait)); $parser->addVisitor(new ConstantParserVisitor($trait)); $parser->addVisitor(new PropertyParserVisitor($trait)); $parser->parse(); return $trait; }
public function testVisitors() { $struct = new PhpClass(); $visitor = new ClassParserVisitor($struct); $parser = new FileParser('dummy-file'); $parser->addVisitor($visitor); $this->assertTrue($parser->hasVisitor($visitor)); $parser->removeVisitor($visitor); $this->assertFalse($parser->hasVisitor($visitor)); }