aboutsummaryrefslogtreecommitdiff
path: root/csharp/TestBed/slowbcl.proto
diff options
context:
space:
mode:
Diffstat (limited to 'csharp/TestBed/slowbcl.proto')
-rw-r--r--csharp/TestBed/slowbcl.proto43
1 files changed, 43 insertions, 0 deletions
diff --git a/csharp/TestBed/slowbcl.proto b/csharp/TestBed/slowbcl.proto
new file mode 100644
index 00000000..3bf94a0f
--- /dev/null
+++ b/csharp/TestBed/slowbcl.proto
@@ -0,0 +1,43 @@
+package slowbcl;
+
+option csharp_namespace = "Google.ProtocolBuffers.SlowBcl";
+option csharp_file_classname = "SlowBclProtoFile";
+
+message TimeSpan {
+ optional sint64 value = 1; // the size of the timespan (in units of the selected scale)
+ optional TimeSpanScale scale = 2 [default = DAYS]; // the scale of the timespan
+ enum TimeSpanScale {
+ DAYS = 0;
+ HOURS = 1;
+ MINUTES = 2;
+ SECONDS = 3;
+ MILLISECONDS = 4;
+
+ MINMAX = 15; // dubious
+ }
+}
+
+message DateTime {
+ optional sint64 value = 1; // the offset (in units of the selected scale) from 1970/01/01
+ optional TimeSpanScale scale = 2 [default = DAYS]; // the scale of the timespan
+ enum TimeSpanScale {
+ DAYS = 0;
+ HOURS = 1;
+ MINUTES = 2;
+ SECONDS = 3;
+ MILLISECONDS = 4;
+
+ MINMAX = 15; // dubious
+ }
+}
+
+message Guid {
+ optional fixed64 lo = 1; // the first 8 bytes of the guid
+ optional fixed64 hi = 2; // the second 8 bytes of the guid
+}
+
+message Decimal {
+ optional uint64 lo = 1; // the first 64 bits of the underlying value
+ optional uint32 hi = 2; // the last 32 bis of the underlying value
+ optional uint32 signScale = 3; // the number of decimal digits, and the sign
+}