gossi\codegen\model\PhpTrait::fromReflection PHP Method

fromReflection() public static method

Creates a PHP trait from reflection
Deprecation: Use fromFile() instead
public static fromReflection ( ReflectionClass $ref ) : PhpTrait
$ref ReflectionClass
return PhpTrait
    public static function fromReflection(\ReflectionClass $ref)
    {
        return static::fromFile($ref->getFileName());
    }

Usage Example

 /**
  * Creates a PHP class from reflection
  * 
  * @param \ReflectionClass $ref
  * @return PhpClass
  */
 public static function fromReflection(\ReflectionClass $ref)
 {
     $class = new static();
     $class->setQualifiedName($ref->name)->setAbstract($ref->isAbstract())->setFinal($ref->isFinal())->setUseStatements(ReflectionUtils::getUseStatements($ref));
     if ($ref->getDocComment()) {
         $docblock = new Docblock($ref);
         $class->setDocblock($docblock);
         $class->setDescription($docblock->getShortDescription());
         $class->setLongDescription($docblock->getLongDescription());
     }
     // methods
     foreach ($ref->getMethods() as $method) {
         $class->setMethod(static::createMethod($method));
     }
     // properties
     foreach ($ref->getProperties() as $property) {
         $class->setProperty(static::createProperty($property));
     }
     // traits
     foreach ($ref->getTraits() as $trait) {
         $class->addTrait(PhpTrait::fromReflection($trait));
     }
     // constants
     // TODO: https://github.com/gossi/php-code-generator/issues/19
     $class->setConstants($ref->getConstants());
     return $class;
 }
All Usage Examples Of gossi\codegen\model\PhpTrait::fromReflection