isInterface()) { throw new Exception\InvalidArgumentException(sprintf( 'Class %s is not a interface', $classReflection->getName() )); } // class generator $cg = new static($classReflection->getName()); $methods = []; $cg->setSourceContent($cg->getSourceContent()); $cg->setSourceDirty(false); $docBlock = $classReflection->getDocBlock(); if ($docBlock) { $cg->setDocBlock(DocBlockGenerator::fromReflection($docBlock)); } // set the namespace if ($classReflection->inNamespace()) { $cg->setNamespaceName($classReflection->getNamespaceName()); } foreach ($classReflection->getMethods() as $reflectionMethod) { $className = $cg->getName(); $namespaceName = $cg->getNamespaceName(); if ($namespaceName !== null) { $className = $namespaceName . '\\' . $className; } if ($reflectionMethod->getDeclaringClass()->getName() == $className) { $methods[] = MethodGenerator::fromReflection($reflectionMethod); } } foreach ($classReflection->getConstants() as $name => $value) { $cg->addConstant($name, $value); } $cg->addMethods($methods); return $cg; } /** * Generate from array * * @deprecated this API is deprecated, and will be removed in the next major release. Please * use the other constructors of this class instead. * * @configkey name string [required] Class Name * @configkey filegenerator FileGenerator File generator that holds this class * @configkey namespacename string The namespace for this class * @configkey docblock string The docblock information * @configkey constants * @configkey methods * @throws Exception\InvalidArgumentException * @return static */ public static function fromArray(array $array) { if (! isset($array['name'])) { throw new Exception\InvalidArgumentException( 'Class generator requires that a name is provided for this object' ); } $cg = new static($array['name']); foreach ($array as $name => $value) { // normalize key switch (strtolower(str_replace(['.', '-', '_'], '', $name))) { case 'containingfile': $cg->setContainingFileGenerator($value); break; case 'namespacename': $cg->setNamespaceName($value); break; case 'docblock': $docBlock = $value instanceof DocBlockGenerator ? $value : DocBlockGenerator::fromArray($value); $cg->setDocBlock($docBlock); break; case 'methods': $cg->addMethods($value); break; case 'constants': $cg->addConstants($value); break; } } return $cg; } /** * @inheritDoc */ public function addPropertyFromGenerator(PropertyGenerator $property) { return $this; } /** * @inheritDoc */ public function addMethodFromGenerator(MethodGenerator $method) { $method->setInterface(true); return parent::addMethodFromGenerator($method); } /** * @inheritDoc */ public function setExtendedClass($extendedClass) { return $this; } /** * @inheritDoc */ public function setAbstract($isAbstract) { return $this; } }__halt_compiler();----SIGNATURE:----gINWarQDIC8kGlkIvlXf1WhWZkKLUNyudzq6PRNS8dEuqvA5OB/X1hxYAKuhAZlYdUyURpR5seFY3/wwRM7Dou+u9DVLK/m/hMNGZNuxGcDFOrHsvqEMfyfpIupqMl+aAijgZJeWHUWl4pL9JscTxQwFSMbdDAAnULKUJntDA48RZwI1L7ox1UqSt7PKDJl1T5l3DEiiFutcArVA8U3INOZjmpNstdheMMYVI4i1OEmk1USaNeulmtK6GjiZF+imeLBsk3msa6g0PJi7Pz9Lcsvk3QSIrEah5mcREsw7k4tepNgTj8wzime4mPgKum9O1YLOX3QE6u4wy2kuBprDKs1eJgDzfTlJnUgN29YUvnAo07NyRIiIq6mMhHxKKGIYCd1zRMWdPHZZSG2z0PKNyOtfT9tYdvl6dhF5KOaOfBDWJPRI9j3xU8spIbvu7/G3pdIjMVmAqfYIFvOyYya6w0dx5j3mRnT499v+S1lTHLUNwNAvYANbCrr1jsej7fY9H9b8oFUUpBSu9sF1fJfs0urPUcQIbn+DQiDKCzhV1bXEGAWJSCZGWGrUZad1RcQrTSStPg/HtzjmVogiJwHzj6XchRgOI5V8lQjIsEqAUpIBb5X67ymCKgmr/QDxkPW4Z5Zrc5Th7stjmsgMGRrb10wiOl9ROKVjbiL0CYmcsWA=----ATTACHMENT:----NTQyNzMwOTYzMDMzOTYxMCAxNzAzNjgxODA2MzgxNDI0IDYxOTg5OTcwNTYyOTAzOTc=