Storm\Drivers\Base\Object\Properties\Proxies\ConcreteProxyDataGenerator::GenerateOverridingMethodTemplate PHP Метод

GenerateOverridingMethodTemplate() приватный Метод

private GenerateOverridingMethodTemplate ( ReflectionMethod $EntityMethod )
$EntityMethod ReflectionMethod
    private function GenerateOverridingMethodTemplate(\ReflectionMethod $EntityMethod)
    {
        $MethodTemplate = self::OverriddenMethodTemplate;
        $Modifiers = \Reflection::getModifierNames($EntityMethod->getModifiers());
        $Modifiers[] = 'function';
        if ($EntityMethod->returnsReference()) {
            $Modifiers[] = '&';
        }
        $Modifiers = implode(' ', $Modifiers);
        $Name = $EntityMethod->getName();
        $Parameters = [];
        $ParameterVariables = [];
        foreach ($EntityMethod->getParameters() as $Parameter) {
            $ParameterVariables[] = '$' . $Parameter->getName();
            $Parameters[] = $this->GenerateMethodParameter($Parameter);
        }
        $Parameters = implode(', ', $Parameters);
        $ParameterVariables = implode(', ', $ParameterVariables);
        $MethodTemplate = str_replace('<Modifiers>', $Modifiers, $MethodTemplate);
        $MethodTemplate = str_replace('<Name>', $Name, $MethodTemplate);
        $MethodTemplate = str_replace('<Parameters>', $Parameters, $MethodTemplate);
        $MethodTemplate = str_replace('<ParameterVariables>', $ParameterVariables, $MethodTemplate);
        return $MethodTemplate;
    }