|
|
@ -168,14 +168,16 @@ namespace Google.Protobuf.Reflection |
|
|
|
get { return fieldType == FieldType.Message && messageType.Proto.Options != null && messageType.Proto.Options.MapEntry; } |
|
|
|
get { return fieldType == FieldType.Message && messageType.Proto.Options != null && messageType.Proto.Options.MapEntry; } |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// TODO(jonskeet): Check whether this is correct with proto3, where we default to packed... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|
/// Returns <c>true</c> if this field is a packed, repeated field; <c>false</c> otherwise. |
|
|
|
/// Returns <c>true</c> if this field is a packed, repeated field; <c>false</c> otherwise. |
|
|
|
/// </summary> |
|
|
|
/// </summary> |
|
|
|
public bool IsPacked |
|
|
|
public bool IsPacked |
|
|
|
{ |
|
|
|
{ |
|
|
|
get { return Proto.Options != null && Proto.Options.Packed; } |
|
|
|
// Note the || rather than && here - we're effectively defaulting to packed, because that *is* |
|
|
|
|
|
|
|
// the default in proto3, which is all we support. We may give the wrong result for the protos |
|
|
|
|
|
|
|
// within descriptor.proto, but that's okay, as they're never exposed and we don't use IsPacked |
|
|
|
|
|
|
|
// within the runtime. |
|
|
|
|
|
|
|
get { return Proto.Options == null || Proto.Options.Packed; } |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
/// <summary> |
|
|
|