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 * @param array $array * @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:----QoQLCAY+zDmnmcm4yDvS1DOJJdYh0x9Idbt5LRGppcRCf1W8GTdOpQSjUuBW19QrtE3bIOj9Zco5VaQYM49prEkwADBgxGbnjtleQIENVWtWFpHsz7lfhYoO833KKZ9Dsh7qQ2svXEplRdo2YddjuzjRmheL3vWXI0F05aKmSIZgO5v27VMok+y1NHW5MSq5kFNmeZv83b0c/qzIc9QRaXIL0LwQFHHeGvhxdxDNW79QJysv42GUGHj4BI1RCdllYPBVm3HQHdDKXcQ3VyY66VwA/pVD0uD8u476R4Yl01OteOBLL9OXExBR0BmEteAEG6dbeBLAMJEIRbuPeVMJTUOBw6D6QmxHOCxuOAKpBwFdC32MmGtt0SFm0Nm9eQFbkpE+8lj7IpNrzti8JBU1IvE8JDobIsF4OgQjoilVFtxundKaKUhWXGAEvgAz6RQKLjSBgr7mIRcEQM39Uam2PSvnCE98v1MfFmUgv8GTBWTPzAkz0f399te3tI0NoXdLdrLTseKNckgTmsRgeQACOAVKEMZ0+o2UUuEHpIrkOvMFcTms5X6wC2kN0Kv6Uq2XMLaN0fI3FYHAGypaaNqIKi9KxVA5Pl7QxfZkjgdn9iEydcUACY8MLk8oTvAex+VmPK7KJl+PCsTKU1h2ubRnExAbUnmVrNAjnMg+t+NAAdE=----ATTACHMENT:----MTY5MDY5ODQyNDk2OTI0MSA4MjYwMjgxMzM3NzE5ODM0IDU0MjcwMjIxOTkzMzExMjA=