/** * testIsUserDefinedReturnsFalseByDefault * * @return void */ public function testIsUserDefinedReturnsFalseByDefault() { $class = new ASTClass(__CLASS__); $this->assertFalse($class->isUserDefined()); }
/** * Visits a class node. * * @param \PDepend\Source\AST\ASTClass $class * @return void */ public function visitClass(ASTClass $class) { if (false === $class->isUserDefined()) { return; } $this->fireStartClass($class); // Update global class count ++$this->noc; $id = $class->getNamespace()->getId(); ++$this->nodeMetrics[$id][self::M_NUMBER_OF_CLASSES]; $this->nodeMetrics[$class->getId()] = array(self::M_NUMBER_OF_METHODS => 0); foreach ($class->getMethods() as $method) { $method->accept($this); } $this->fireEndClass($class); }
/** * Calculates metrics for the given <b>$class</b> instance. * * @param \PDepend\Source\AST\ASTClass $class * @return void */ public function visitClass(ASTClass $class) { if (false === $class->isUserDefined()) { return; } $this->fireStartClass($class); ++$this->cls; if ($class->isAbstract()) { ++$this->clsa; } $parentClass = $class->getParentClass(); if ($parentClass !== null) { if ($parentClass->getParentClass() === null) { $this->roots[$parentClass->getId()] = true; } $this->noneLeafs[$parentClass->getId()] = true; } // Store node metric $this->nodeMetrics[$class->getId()] = array(); foreach ($class->getMethods() as $method) { $method->accept($this); } foreach ($class->getProperties() as $property) { $property->accept($this); } $this->fireEndClass($class); }
/** * Visits a class node. * * @param \PDepend\Source\AST\ASTClass $class * @return void */ public function visitClass(ASTClass $class) { if (!$class->isUserDefined()) { return; } $doc = $this->packages->ownerDocument; $classXml = $doc->createElement('Class'); $classXml->setAttribute('sourceFile', (string) $class->getCompilationUnit()); $classXml->appendChild($doc->createTextNode($class->getName())); if ($class->isAbstract()) { $this->abstractClasses->appendChild($classXml); } else { $this->concreteClasses->appendChild($classXml); } }
/** * Generates the XML for a class or trait node. * * @param \PDepend\Source\AST\ASTClass $type * @param string $typeIdentifier * @return void */ private function generateTypeXml(ASTClass $type, $typeIdentifier) { if (!$type->isUserDefined()) { return; } $xml = end($this->xmlStack); $doc = $xml->ownerDocument; $typeXml = $doc->createElement($typeIdentifier); $typeXml->setAttribute('name', $type->getName()); $this->writeNodeMetrics($typeXml, $type); $this->writeFileReference($typeXml, $type->getCompilationUnit()); $xml->appendChild($typeXml); array_push($this->xmlStack, $typeXml); foreach ($type->getMethods() as $method) { $method->accept($this); } foreach ($type->getProperties() as $property) { $property->accept($this); } array_pop($this->xmlStack); }
/** * Visits a class node. * * @param \PDepend\Source\AST\ASTClass $class * @return void */ public function visitClass(ASTClass $class) { if (!$class->isUserDefined()) { return; } $this->fireStartClass($class); $this->initNodeMetricsForClass($class); $this->calculateNumberOfDerivedClasses($class); $this->calculateNumberOfAddedAndOverwrittenMethods($class); $this->calculateDepthOfInheritanceTree($class); $this->fireEndClass($class); }
/** * Visits a class node. * * @param \PDepend\Source\AST\ASTClass $node * @return void */ public function visitClass(ASTClass $node) { if (!$node->isUserDefined()) { return; } $this->apply(new ClassNode($node)); parent::visitClass($node); }
/** * Visits a class node. * * @param \PDepend\Source\AST\ASTClass $class * @return void */ public function visitClass(ASTClass $class) { if (!$class->isUserDefined()) { return; } $xml = end($this->xmlStack); $doc = $xml->ownerDocument; $classXml = $doc->createElement('class'); $classXml->setAttribute('name', $class->getName()); $this->writeNodeMetrics($classXml, $class); $this->writeFileReference($classXml, $class->getCompilationUnit()); $xml->appendChild($classXml); array_push($this->xmlStack, $classXml); foreach ($class->getMethods() as $method) { $method->accept($this); } foreach ($class->getProperties() as $property) { $property->accept($this); } array_pop($this->xmlStack); }