private function buildSignature(PhpClass $model) { if ($model->isAbstract()) { $this->writer->write('abstract '); } if ($model->isFinal()) { $this->writer->write('final '); } $this->writer->write('class '); $this->writer->write($model->getName()); if ($parentClassName = $model->getParentClassName()) { $this->writer->write(' extends ' . $parentClassName); } if ($model->hasInterfaces()) { $this->writer->write(' implements '); $this->writer->write(implode(', ', $model->getInterfaces()->toArray())); } }
public function testParentClassName() { $class = new PhpClass(); $this->assertNull($class->getParentClassName()); $this->assertSame($class, $class->setParentClassName('stdClass')); $this->assertEquals('stdClass', $class->getParentClassName()); $this->assertSame($class, $class->setParentClassName(null)); $this->assertNull($class->getParentClassName()); }