Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 24 additions & 1 deletion src/Plugin/Compiler.php
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,9 @@ static function (ServiceMethodDescriptor $method): File\MethodDescriptor {
}

if ($options->emitMetadata && !$index->empty()) {
$descriptorName = Naming::descriptorName($source);
// A user message/enum may already occupy "DescriptorRegistry" in
// this namespace — that is not their fault, so rename ours instead.
$descriptorName = Naming::descriptorName(self::topLevelClassNames($proto));

yield $generator->generateDescriptorMetadataRegistry(
$index,
Expand Down Expand Up @@ -156,6 +158,27 @@ private function doGenerateMessages(ClassLikeGenerator $generator, MessageDescri
}
}

/**
* The class names generated directly in the file's namespace — the top-level
* messages and enums the descriptor registry must not clash with.
*
* @return array<string, true>
*/
private static function topLevelClassNames(FileDescriptor $proto): array
{
$names = [];

foreach ($proto->messages as $message) {
$names[Naming::pascalCase($message->name)] = true;
}

foreach ($proto->enums as $enum) {
$names[Naming::pascalCase($enum->name)] = true;
}

return $names;
}

/**
* @return non-empty-string
* @throws CodeCannotBeGenerated
Expand Down
16 changes: 11 additions & 5 deletions src/Plugin/Generator/ProtoGenerator.php
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,7 @@ private function generateMessage(PhpNamespace $namespace, string $className, Par
'',
$this->namespacer->namespace,
$message->path,
\sprintf("{$oneOfName}%s::class", Naming::pascalCase($variant->name)),
\sprintf('%s::class', self::oneofVariantName($oneOfName, $variant)),
]),
),
$variants,
Expand Down Expand Up @@ -358,7 +358,7 @@ private function generateOneof(
->addComment('@api')
->addComment('@phpstan-sealed (')
->addComment(implode(" |\n", array_map(
static fn(Parser\FieldDescriptor $variant) => \sprintf(' %s', self::oneofVariantName($oneof->name, $variant->name)),
static fn(Parser\FieldDescriptor $variant) => \sprintf(' %s', self::oneofVariantName($oneof->name, $variant)),
$variants,
)))
->addComment(')');
Expand All @@ -381,7 +381,7 @@ private function generateOneofVariant(
Parser\FieldDescriptor $variant,
): iterable {
$interfaceName = Naming::pascalCase($oneof->name);
$className = self::oneofVariantName($oneof->name, $variant->name);
$className = self::oneofVariantName($oneof->name, $variant);

$descriptor = new Parser\MessageDescriptor(
name: $className,
Expand Down Expand Up @@ -449,8 +449,14 @@ private function parseDefaultValue(
};
}

private static function oneofVariantName(string $oneof, string $variant): string
private static function oneofVariantName(string $oneof, Parser\FieldDescriptor $variant): string
{
return Naming::pascalCase("{$oneof} {$variant}");
if ($variant->jsonName !== null) {
$name = \sprintf('%s%s', Naming::pascalCase($oneof), ucfirst($variant->jsonName));
} else {
$name = Naming::pascalCase("{$oneof} {$variant->name}");
}

return Naming::secure($name);
}
}
32 changes: 21 additions & 11 deletions src/Plugin/Naming.php
Original file line number Diff line number Diff line change
Expand Up @@ -102,14 +102,29 @@ enum Naming
'class' => 1,
];

public static function descriptorName(string $file): string
/**
* The descriptor registry is normally `DescriptorRegistry`, but a user
* message or enum may already own that class name in the same namespace.
* That is not the user's fault, so we step aside with a numeric suffix — a
* digit survives the PascalCase/path normalisation an underscore would not.
*
* @param array<string, mixed> $taken class names already used in the namespace
*/
public static function descriptorName(array $taken = []): string
{
$info = pathinfo($file);
$dir = $info['dirname'] ?? '.';
$filename = $info['filename'];
$name = Naming::pascalCase(self::words(($dir !== '.' ? "{$dir} " : '') . $filename));
$base = 'DescriptorRegistry';

if (!isset($taken[$base])) {
return $base;
}

$suffix = 2;

return "{$name}DescriptorRegistry";
while (isset($taken[$base . $suffix])) {
++$suffix;
}

return $base . $suffix;
}

public static function camelCase(string $name): string
Expand Down Expand Up @@ -168,11 +183,6 @@ public static function path(string $path): string
));
}

private static function words(string $name): string
{
return trim((string) preg_replace('/[^a-zA-Z0-9]+/', ' ', $name));
}

public static function secure(string $name): string
{
return isset(self::CLASS_NAMES_RESERVED_WORDS[strtolower($name)]) ? "{$name}_" : $name;
Expand Down
18 changes: 10 additions & 8 deletions tests/NamingTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,17 @@
#[CoversClass(Naming::class)]
final class NamingTest extends TestCase
{
#[TestWith(['pg_query.proto', 'PgQueryDescriptorRegistry'])]
#[TestWith(['protos/queue.proto', 'ProtosQueueDescriptorRegistry'])]
#[TestWith(['.build/libpg_query/protobuf/pg_query.proto', 'BuildLibpgQueryProtobufPgQueryDescriptorRegistry'])]
#[TestWith(['./api/v1/main.proto', 'ApiV1MainDescriptorRegistry'])]
#[TestWith(['pg-query.proto', 'PgQueryDescriptorRegistry'])]
#[TestWith(['api/v1.beta/main.proto', 'ApiV1BetaMainDescriptorRegistry'])]
public function testDescriptorName(string $actual, string $expected): void
public function testDescriptorName(): void
{
self::assertSame($expected, Naming::descriptorName($actual));
self::assertSame('DescriptorRegistry', Naming::descriptorName());
self::assertSame('DescriptorRegistry', Naming::descriptorName(['SomeMessage' => true]));

// A user type already occupies the name — ours steps aside.
self::assertSame('DescriptorRegistry2', Naming::descriptorName(['DescriptorRegistry' => true]));
self::assertSame('DescriptorRegistry3', Naming::descriptorName([
'DescriptorRegistry' => true,
'DescriptorRegistry2' => true,
]));
}

#[TestWith(['foo', 'foo'])]
Expand Down
14 changes: 14 additions & 0 deletions tests/fixtures/pgquery/pgquery.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
syntax = "proto3";

package pg_query;

message Node {
oneof node {
RTEPermissionInfo rtepermission_info = 99 [json_name="RTEPermissionInfo"];
}
}

message RTEPermissionInfo
{
bool inh = 2 [json_name="inh"];
}
9 changes: 9 additions & 0 deletions tests/fixtures/registry_collision/registry_collision.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
syntax = "proto3";

package registry.collision;

// A user message that already occupies the class name the descriptor registry
// would otherwise take. Generation must succeed by renaming ours, not error.
message DescriptorRegistry {
string value = 1;
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class DepDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'CglkZXAucHJvdG8SCmRlcC5wa2cudjEiDAoKRGVwTWVzc2FnZUIVSAHKAhBUZXN0XERlcHNcQ3VzdG9tSkgKBhIEAAAFFQoICgEMEgMAABIKCAoBAhIDAgATCggKAQgSAwMALAoJCgIIKRIDAwAsCgkKAgQAEgMFABUKCgoDBAABEgMFCBJiBnByb3RvMw==';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class MainDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'CgptYWluLnByb3RvEgx0ZXN0Lm1haW4udjEaCWRlcC5wcm90byI3CgtNYWluTWVzc2FnZRIoCgNkZXAYASABKAsyFi5kZXAucGtnLnYxLkRlcE1lc3NhZ2VSA2RlcEp2CgYSBAAACAEKCAoBDBIDAAASCggKAQISAwIAFQoJCgIDABIDBAATCgoKAgQAEgQGAAgBCgoKAwQAARIDBggTCgsKBAQAAgASAwcCIAoMCgUEAAIABhIDBwIXCgwKBQQAAgABEgMHGBsKDAoFBAACAAMSAwceH2IGcHJvdG8z';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@
declare(strict_types=1);

\Thesis\Protobuf\Registry\Pool::get()->register(
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Test\Deps\Custom\DepDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Test\Main\V1\MainDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Test\Deps\Custom\DescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Test\Main\V1\DescriptorRegistry()),
);
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class DeprecatedDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'ChBkZXByZWNhdGVkLnByb3RvEgt0ZXN0LmFwaS52MSJSCgdSZXF1ZXN0EhYKBG5hbWUYASABKAlSBG5hbWVCAhgBGisKDU5lc3RlZFJlcXVlc3QSFgoEbmFtZRgBIAEoCVIEbmFtZUICGAE6AhgBOgIYASo1CgRUeXBlEhgKEFRZUEVfVU5TUEVDSUZJRUQQABoCCAESDwoLVFlQRV9QUk9UTzMQARoCGAEySwoLRWNob1NlcnZpY2USNwoERWNobxIULnRlc3QuYXBpLnYxLlJlcXVlc3QaFC50ZXN0LmFwaS52MS5SZXF1ZXN0IgOIAgEaA4gCAUq+BgoGEgQAACUBCggKAQwSAwAAEgoICgECEgMCABQKIQoCBQASBAUACwEaFSBUeXBlIGlzIGRlcHJlY2F0ZWQuCgoKCgMFAAESAwUFCQoKCgMFAAMSAwYEHQoLCgQFAAMDEgMGBB0KIgoEBQACABIDCQQtGhUgQ2FzZSBpcyBkZXByZWNhdGVkLgoKDAoFBQACAAESAwkEFAoMCgUFAAIAAhIDCRcYCgwKBQUAAgADEgMJGSwKDQoGBQACAAMBEgMJGisKCwoEBQACARIDCgQUCgwKBQUAAgEBEgMKBA8KDAoFBQACAQISAwoSEwokCgIEABIEDgAbARoYIFJlcXVlc3QgaXMgZGVwcmVjYXRlZC4KCgoKAwQAARIDDggPCgoKAwQABxIDDwQdCgsKBAQABwMSAw8EHQojCgQEAAIAEgMSBCgaFiBGaWVsZCBpcyBkZXByZWNhdGVkLgoKDAoFBAACAAUSAxIECgoMCgUEAAIAARIDEgsPCgwKBQQAAgADEgMSEhMKDAoFBAACAAgSAxIUJwoNCgYEAAIACAMSAxIVJgoyCgQEAAMAEgQVBBoFGiQgTmVzdGVkIG1lc3NhZ2UgaXMgYWxzbyBkZXByZWNhdGVkLgoKDAoFBAADAAESAxUMGQoMCgUEAAMABxIDFgghCg0KBgQAAwAHAxIDFgghCjAKBgQAAwACABIDGQgsGiEgTmVzdGVkIGZpZWxkIGlzIGRlcHJlY2F0ZWQgdG9vLgoKDgoHBAADAAIABRIDGQgOCg4KBwQAAwACAAESAxkPEwoOCgcEAAMAAgADEgMZFhcKDgoHBAADAAIACBIDGRgrCg8KCAQAAwACAAgDEgMZGSoKJAoCBgASBB4AJQEaGCBTZXJ2aWNlIGlzIGRlcHJlY2F0ZWQuCgoKCgMGAAESAx4IEwoKCgMGAAMSAx8EHQoLCgQGAAMhEgMfBB0KJwoEBgACABIEIgQkBRoZIFJwYyBpcyBhbHNvIGRlcHJlY2F0ZWQuCgoMCgUGAAIAARIDIggMCgwKBQYAAgACEgMiDRQKDAoFBgACAAMSAyIfJgoMCgUGAAIABBIDIwghCg0KBgYAAgAEIRIDIwghYgZwcm90bzM=';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@
declare(strict_types=1);

\Thesis\Protobuf\Registry\Pool::get()->register(
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Test\Api\V1\DeprecatedDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Test\Api\V1\DescriptorRegistry()),
);
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class EditionsDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = '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';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@
declare(strict_types=1);

\Thesis\Protobuf\Registry\Pool::get()->register(
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Proto\Api\V1\EditionsDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Proto\Api\V1\DescriptorRegistry()),
);
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class ProtosAuthDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'ChFwcm90b3MvYXV0aC5wcm90bxILVGhlc2lzLkF1dGgiPgoMTG9naW5SZXF1ZXN0EhIKBHVzZXIYAiABKAlSBHVzZXISGgoIcGFzc3dvcmQYAyABKAlSCHBhc3N3b3JkIiUKDUxvZ2luUmVzcG9uc2USFAoFdG9rZW4YASABKAlSBXRva2VuSvEBCgYSBAAACwEKCAoBDBIDAAASCggKAQISAwIAFAoKCgIEABIEBAAHAQoKCgMEAAESAwQIFAoLCgQEAAIAEgMFBBQKDAoFBAACAAUSAwUECgoMCgUEAAIAARIDBQsPCgwKBQQAAgADEgMFEhMKCwoEBAACARIDBgQYCgwKBQQAAgEFEgMGBAoKDAoFBAACAQESAwYLEwoMCgUEAAIBAxIDBhYXCgoKAgQBEgQJAAsBCgoKAwQBARIDCQgVCgsKBAQBAgASAwoEFQoMCgUEAQIABRIDCgQKCgwKBQQBAgABEgMKCxAKDAoFBAECAAMSAwoTFGIGcHJvdG8z';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class AuthV1DescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'Cg1hdXRoX3YxLnByb3RvEg5UaGVzaXMuQXV0aC5WMRoRcHJvdG9zL2F1dGgucHJvdG8yTQoLQXV0aFNlcnZpY2USPgoFTG9naW4SGS5UaGVzaXMuQXV0aC5Mb2dpblJlcXVlc3QaGi5UaGVzaXMuQXV0aC5Mb2dpblJlc3BvbnNlSnYKBhIEAAAIAQoICgEMEgMAABIKCAoBAhIDAgAXCgkKAgMAEgMEABsKCgoCBgASBAYACAEKCgoDBgABEgMGCBMKCwoEBgACABIDBwQ+CgwKBQYAAgABEgMHCA0KDAoFBgACAAISAwcOHwoMCgUGAAIAAxIDByo8YgZwcm90bzM=';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class ProtosQueueDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'ChJwcm90b3MvcXVldWUucHJvdG8SDFRoZXNpcy5RdWV1ZSIyCgtQdXNoUmVxdWVzdBojCgdNZXNzYWdlEhgKB2NvbnRlbnQYASABKAlSB2NvbnRlbnQiVAoLUHVsbFJlcXVlc3QSEAoDcW9zGAEgASgFUgNxb3MaMwoHTWVzc2FnZRIYCgdjb250ZW50GAEgASgJUgdjb250ZW50Eg4KAmlkGAIgASgJUgJpZCI3CglIZWFydGJlYXQaFAoKRnJvbVNlcnZlchoGCgRQaW5nGhQKCkZyb21DbGllbnQaBgoEUGluZ0qGBAoGEgQAABsBCggKAQwSAwAAEgoICgECEgMCABUKCgoCBAASBAQACAEKCgoDBAABEgMECBMKDAoEBAADABIEBQQHBQoMCgUEAAMAARIDBQwTCg0KBgQAAwACABIDBggbCg4KBwQAAwACAAUSAwYIDgoOCgcEAAMAAgABEgMGDxYKDgoHBAADAAIAAxIDBhkaCgoKAgQBEgQKABEBCgoKAwQBARIDCggTCgwKBAQBAwASBAsEDgUKDAoFBAEDAAESAwsMEwoNCgYEAQMAAgASAwwIGwoOCgcEAQMAAgAFEgMMCA4KDgoHBAEDAAIAARIDDA8WCg4KBwQBAwACAAMSAwwZGgoNCgYEAQMAAgESAw0IFgoOCgcEAQMAAgEFEgMNCA4KDgoHBAEDAAIBARIDDQ8RCg4KBwQBAwACAQMSAw0UFQoLCgQEAQIAEgMQBBIKDAoFBAECAAUSAxAECQoMCgUEAQIAARIDEAoNCgwKBQQBAgADEgMQEBEKCgoCBAISBBMAGwEKCgoDBAIBEgMTCBEKDAoEBAIDABIEFAQWBQoMCgUEAgMAARIDFAwWCg0KBgQCAwADABIDFQgXCg4KBwQCAwADAAESAxUQFAoMCgQEAgMBEgQYBBoFCgwKBQQCAwEBEgMYDBYKDQoGBAIDAQMAEgMZCBcKDgoHBAIDAQMAARIDGRAUYgZwcm90bzM=';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class QueueV1DescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'Cg5xdWV1ZV92MS5wcm90bxIPVGhlc2lzLlF1ZXVlLlYxGhJwcm90b3MvcXVldWUucHJvdG8aG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bzL+AQoMUXVldWVTZXJ2aWNlEkMKBFB1c2gSIS5UaGVzaXMuUXVldWUuUHVzaFJlcXVlc3QuTWVzc2FnZRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eSgBEkYKBFB1bGwSGS5UaGVzaXMuUXVldWUuUHVsbFJlcXVlc3QaIS5UaGVzaXMuUXVldWUuUHVsbFJlcXVlc3QuTWVzc2FnZTABEmEKCUhlYXJ0YmVhdBInLlRoZXNpcy5RdWV1ZS5IZWFydGJlYXQuRnJvbUNsaWVudC5QaW5nGicuVGhlc2lzLlF1ZXVlLkhlYXJ0YmVhdC5Gcm9tU2VydmVyLlBpbmcoATABSqcCCgYSBAAACwEKCAoBDBIDAAASCggKAQISAwIAGAoJCgIDABIDBAAcCgkKAgMBEgMFACUKCgoCBgASBAcACwEKCgoDBgABEgMHCBQKCwoEBgACABIDCARJCgwKBQYAAgABEgMICAwKDAoFBgACAAUSAwgNEwoMCgUGAAIAAhIDCBQnCgwKBQYAAgADEgMIMkcKCwoEBgACARIDCQQ/CgwKBQYAAgEBEgMJCAwKDAoFBgACAQISAwkNGAoMCgUGAAIBBhIDCSMpCgwKBQYAAgEDEgMJKj0KCwoEBgACAhIDCgRgCgwKBQYAAgIBEgMKCBEKDAoFBgACAgUSAwoTGQoMCgUGAAICAhIDChozCgwKBQYAAgIGEgMKPkQKDAoFBgACAgMSAwpFXmIGcHJvdG8z';

Expand Down
8 changes: 4 additions & 4 deletions tests/snapshots/grpc/Thesis/autoload.metadata.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
declare(strict_types=1);

\Thesis\Protobuf\Registry\Pool::get()->register(
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Auth\V1\AuthV1DescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Auth\ProtosAuthDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Queue\ProtosQueueDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Queue\V1\QueueV1DescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Auth\V1\DescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Auth\DescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Queue\DescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Thesis\Queue\V1\DescriptorRegistry()),
);
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
/**
* @api
*/
final readonly class NamingDescriptorRegistry implements Registry\Registrar
final readonly class DescriptorRegistry implements Registry\Registrar
{
private const string DESCRIPTOR_BUFFER = 'CgxuYW1pbmcucHJvdG8SBm5hbWluZyKPAwoGTmFtaW5nEhcKB3VzZXJfaWQYASABKAlSBnVzZXJJZBIoChBodHRwX3N0YXR1c19jb2RlGAIgASgJUg5odHRwU3RhdHVzQ29kZRIOCgJJRBgDIAEoBFICSUQSEAoDVFRMGAQgASgEUgNUVEwSEAoDVVJMGAUgASgJUgNVUkwSFwoHdXNlcl9JRBgGIAEoCVIGdXNlcklEEhsKCWxlYXNlX1RUTBgHIAEoCVIIbGVhc2VUVEwSGwoJSURfcHJlZml4GAggASgJUghJRFByZWZpeBIiCgxhbHJlYWR5Q2FtZWwYCSABKAlSDGFscmVhZHlDYW1lbBIYCgdsZWFzZUlEGAogASgJUgdsZWFzZUlEEh4KCkhUVFBTdGF0dXMYCyABKAlSCkhUVFBTdGF0dXMSDAoBYRgMIAEoCVIBYRIXCgdmaWVsZF8yGA0gASgJUgZmaWVsZDISGwoJdHJhaWxpbmdfGA4gASgJUgh0cmFpbGluZxIZCghfbGVhZGluZxgPIAEoCVIHTGVhZGluZ0rtBgoGEgQAABgBCggKAQwSAwAAEgoICgECEgMCAA8KCgoCBAASBAQAGAEKCgoDBAABEgMECA4KCwoEBAACABIDBQQXCgwKBQQAAgAFEgMFBAoKDAoFBAACAAESAwULEgoMCgUEAAIAAxIDBRUWCgsKBAQAAgESAwYEIAoMCgUEAAIBBRIDBgQKCgwKBQQAAgEBEgMGCxsKDAoFBAACAQMSAwYeHwoLCgQEAAICEgMIBBIKDAoFBAACAgUSAwgECgoMCgUEAAICARIDCAsNCgwKBQQAAgIDEgMIEBEKCwoEBAACAxIDCQQTCgwKBQQAAgMFEgMJBAoKDAoFBAACAwESAwkLDgoMCgUEAAIDAxIDCRESCgsKBAQAAgQSAwoEEwoMCgUEAAIEBRIDCgQKCgwKBQQAAgQBEgMKCw4KDAoFBAACBAMSAwoREgoLCgQEAAIFEgMMBBcKDAoFBAACBQUSAwwECgoMCgUEAAIFARIDDAsSCgwKBQQAAgUDEgMMFRYKCwoEBAACBhIDDQQZCgwKBQQAAgYFEgMNBAoKDAoFBAACBgESAw0LFAoMCgUEAAIGAxIDDRcYCgsKBAQAAgcSAw4EGQoMCgUEAAIHBRIDDgQKCgwKBQQAAgcBEgMOCxQKDAoFBAACBwMSAw4XGAoLCgQEAAIIEgMQBBwKDAoFBAACCAUSAxAECgoMCgUEAAIIARIDEAsXCgwKBQQAAggDEgMQGhsKCwoEBAACCRIDEQQYCgwKBQQAAgkFEgMRBAoKDAoFBAACCQESAxELEgoMCgUEAAIJAxIDERUXCgsKBAQAAgoSAxIEGwoMCgUEAAIKBRIDEgQKCgwKBQQAAgoBEgMSCxUKDAoFBAACCgMSAxIYGgoLCgQEAAILEgMUBBIKDAoFBAACCwUSAxQECgoMCgUEAAILARIDFAsMCgwKBQQAAgsDEgMUDxEKCwoEBAACDBIDFQQYCgwKBQQAAgwFEgMVBAoKDAoFBAACDAESAxULEgoMCgUEAAIMAxIDFRUXCgsKBAQAAg0SAxYEGgoMCgUEAAINBRIDFgQKCgwKBQQAAg0BEgMWCxQKDAoFBAACDQMSAxYXGQoLCgQEAAIOEgMXBBkKDAoFBAACDgUSAxcECgoMCgUEAAIOARIDFwsTCgwKBQQAAg4DEgMXFhhiBnByb3RvMw==';

Expand Down
2 changes: 1 addition & 1 deletion tests/snapshots/naming/Naming/autoload.metadata.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@
declare(strict_types=1);

\Thesis\Protobuf\Registry\Pool::get()->register(
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Naming\NamingDescriptorRegistry()),
new \Thesis\Protobuf\Registry\OnceRegistrar(new \Naming\DescriptorRegistry()),
);
Loading
Loading