blob: 883de2a5752e97f105754c3bdcf9226d969caff0 [file]
// Protocol Buffers - Google's data interchange format
// Copyright 2026 Google Inc. All rights reserved.
//
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file or at
// https://developers.google.com/open-source/licenses/bsd
syntax = "proto2";
package pb;
option csharp_namespace = "Google.Protobuf.Reflection";
option java_multiple_files = true;
option java_outer_classname = "CSharpFeaturesOuterClass";
import "google/protobuf/descriptor.proto";
extend google.protobuf.FeatureSet {
optional CSharpFeatures csharp = 1004;
}
message CSharpFeatures {
// Whether the generated files should have nullable reference type annotations.
// When enabled, the generated C# code includes `#nullable enable annotations`
// and annotates message-typed properties and certain parameters with `?`.
optional bool nullable_reference_types = 1 [
retention = RETENTION_RUNTIME,
targets = TARGET_TYPE_FIELD,
targets = TARGET_TYPE_MESSAGE,
targets = TARGET_TYPE_FILE,
feature_support = {
edition_introduced: EDITION_2026,
},
edition_defaults = { edition: EDITION_LEGACY, value: "false" }
];
}