/** * @param \google\protobuf\FileDescriptorProto $fileDescriptor * * @return boolean */ protected function hasExtension(FileDescriptorProto $fileDescriptor) { $messages = $fileDescriptor->getMessageTypeList(); $hasExtension = $fileDescriptor->hasExtensionList(); if ($hasExtension) { return true; } if ($messages === null) { return false; } foreach ($messages as $message) { if ($message->hasExtensionList()) { return true; } } return false; }