aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers
diff options
context:
space:
mode:
Diffstat (limited to 'src/ProtocolBuffers')
-rw-r--r--src/ProtocolBuffers/ExtensionRegistry.cs5
-rw-r--r--src/ProtocolBuffers/ExtensionRegistryLite.cs6
2 files changed, 9 insertions, 2 deletions
diff --git a/src/ProtocolBuffers/ExtensionRegistry.cs b/src/ProtocolBuffers/ExtensionRegistry.cs
index 02cd4631..32408b09 100644
--- a/src/ProtocolBuffers/ExtensionRegistry.cs
+++ b/src/ProtocolBuffers/ExtensionRegistry.cs
@@ -119,9 +119,12 @@ namespace Google.ProtocolBuffers {
get { return empty; }
}
- public override ExtensionRegistryLite AsReadOnly() {
+ public new ExtensionRegistry AsReadOnly() {
return new ExtensionRegistry(extensionsByName, extensionsByNumber, true);
}
+ protected override ExtensionRegistryLite MakeReadOnly() {
+ return AsReadOnly();
+ }
/// <summary>
/// Finds an extension by fully-qualified field name, in the
diff --git a/src/ProtocolBuffers/ExtensionRegistryLite.cs b/src/ProtocolBuffers/ExtensionRegistryLite.cs
index 693aeb2c..b0548235 100644
--- a/src/ProtocolBuffers/ExtensionRegistryLite.cs
+++ b/src/ProtocolBuffers/ExtensionRegistryLite.cs
@@ -119,7 +119,11 @@ namespace Google.ProtocolBuffers {
get { return empty; }
}
- public virtual ExtensionRegistryLite AsReadOnly() {
+ public ExtensionRegistryLite AsReadOnly() {
+ return MakeReadOnly();
+ }
+
+ protected virtual ExtensionRegistryLite MakeReadOnly() {
return new ExtensionRegistryLite(extensionsByNumber, true);
}