aboutsummaryrefslogtreecommitdiff
path: root/csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs
diff options
context:
space:
mode:
authorJon Skeet <jonskeet@google.com>2015-06-23 16:09:27 +0100
committerJon Skeet <jonskeet@google.com>2015-06-24 17:56:22 +0100
commitbfee2dfe137b07e64ebd46baf71d932d58d01b1f (patch)
tree4bf6258a990369335cc82c8a8059eaaf1dc2dd06 /csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs
parent94071b54d24d2f2f1cb5933a692b5397a047057c (diff)
downloadprotobuf-bfee2dfe137b07e64ebd46baf71d932d58d01b1f.tar.gz
protobuf-bfee2dfe137b07e64ebd46baf71d932d58d01b1f.tar.bz2
protobuf-bfee2dfe137b07e64ebd46baf71d932d58d01b1f.zip
Implement freezing for messages and repeated fields.
Fixes issue #523.
Diffstat (limited to 'csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs')
-rw-r--r--csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs16
1 files changed, 14 insertions, 2 deletions
diff --git a/csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs b/csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs
index cb7292f3..2c8b0a31 100644
--- a/csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs
+++ b/csharp/src/ProtocolBuffers.Test/TestProtos/UnittestImportPublicProto3.cs
@@ -59,6 +59,9 @@ namespace Google.Protobuf.TestProtos {
get { return global::Google.Protobuf.TestProtos.UnittestImportPublicProto3.internal__static_protobuf_unittest_import_PublicImportMessage__FieldAccessorTable; }
}
+ private bool _frozen = false;
+ public bool IsFrozen { get { return _frozen; } }
+
public PublicImportMessage() { }
public PublicImportMessage(PublicImportMessage other) {
@@ -69,14 +72,23 @@ namespace Google.Protobuf.TestProtos {
return new PublicImportMessage(this);
}
+ public void Freeze() {
+ if (IsFrozen) {
+ return;
+ }
+ _frozen = true;
+ }
+
public const int EFieldNumber = 1;
private int e_;
public int E {
get { return e_; }
- set { e_ = value; }
+ set {
+ pb::Freezable.CheckMutable(this);
+ e_ = value;
+ }
}
-
public override bool Equals(object other) {
return Equals(other as PublicImportMessage);
}