blob: bb7f3d0ae75851c15287a145e8d21280d69a3fd7 [file]
// Copyright (c) 2026, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
syntax = "proto3";
package com.android.tools.r8.keepradius.proto;
// Don't put all messages under the outer class.
option java_multiple_files = true;
// Camel-case the outer class name.
option java_outer_classname = "KeepRadiusSummaryProtos";
// Java package consistent with R8 convention.
option java_package = "com.android.tools.r8.keepradius.proto";
message KeepRadiusSummary {
// Name that identifies the build.
string name = 1;
// Link to the full report.
string link = 2;
// Info about number of items.
int32 class_count = 3;
int32 field_count = 4;
int32 method_count = 5;
// Info about number of keep rules.
int32 keep_rule_count = 6;
int32 keep_rule_package_wide_count = 7;
// Info about number of kept items.
KeepInfoCollectionSummary kept_classes = 8;
KeepInfoCollectionSummary kept_fields = 9;
KeepInfoCollectionSummary kept_methods = 10;
// Info about problematic rules.
repeated KeepRuleKeepRadiusSummary keep_rule_keep_radius = 11;
}
message KeepInfoCollectionSummary {
int32 item_count = 1;
int32 no_obfuscation_count = 2;
int32 no_optimization_count = 3;
int32 no_shrinking_count = 4;
}
message KeepRuleKeepRadiusSummary {
string source = 1;
int32 item_count = 2;
}