// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.7
// 	protoc        v6.31.1
// source: src/main/protobuf/action_cache.proto

package protobuf

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type ActionCacheStatistics_MissReason int32

const (
	ActionCacheStatistics_DIFFERENT_ACTION_KEY    ActionCacheStatistics_MissReason = 0
	ActionCacheStatistics_DIFFERENT_DEPS          ActionCacheStatistics_MissReason = 1
	ActionCacheStatistics_DIFFERENT_ENVIRONMENT   ActionCacheStatistics_MissReason = 2
	ActionCacheStatistics_DIFFERENT_FILES         ActionCacheStatistics_MissReason = 3
	ActionCacheStatistics_CORRUPTED_CACHE_ENTRY   ActionCacheStatistics_MissReason = 4
	ActionCacheStatistics_NOT_CACHED              ActionCacheStatistics_MissReason = 5
	ActionCacheStatistics_UNCONDITIONAL_EXECUTION ActionCacheStatistics_MissReason = 6
)

// Enum value maps for ActionCacheStatistics_MissReason.
var (
	ActionCacheStatistics_MissReason_name = map[int32]string{
		0: "DIFFERENT_ACTION_KEY",
		1: "DIFFERENT_DEPS",
		2: "DIFFERENT_ENVIRONMENT",
		3: "DIFFERENT_FILES",
		4: "CORRUPTED_CACHE_ENTRY",
		5: "NOT_CACHED",
		6: "UNCONDITIONAL_EXECUTION",
	}
	ActionCacheStatistics_MissReason_value = map[string]int32{
		"DIFFERENT_ACTION_KEY":    0,
		"DIFFERENT_DEPS":          1,
		"DIFFERENT_ENVIRONMENT":   2,
		"DIFFERENT_FILES":         3,
		"CORRUPTED_CACHE_ENTRY":   4,
		"NOT_CACHED":              5,
		"UNCONDITIONAL_EXECUTION": 6,
	}
)

func (x ActionCacheStatistics_MissReason) Enum() *ActionCacheStatistics_MissReason {
	p := new(ActionCacheStatistics_MissReason)
	*p = x
	return p
}

func (x ActionCacheStatistics_MissReason) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ActionCacheStatistics_MissReason) Descriptor() protoreflect.EnumDescriptor {
	return file_src_main_protobuf_action_cache_proto_enumTypes[0].Descriptor()
}

func (ActionCacheStatistics_MissReason) Type() protoreflect.EnumType {
	return &file_src_main_protobuf_action_cache_proto_enumTypes[0]
}

func (x ActionCacheStatistics_MissReason) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ActionCacheStatistics_MissReason.Descriptor instead.
func (ActionCacheStatistics_MissReason) EnumDescriptor() ([]byte, []int) {
	return file_src_main_protobuf_action_cache_proto_rawDescGZIP(), []int{0, 0}
}

type ActionCacheStatistics struct {
	state         protoimpl.MessageState              `protogen:"open.v1"`
	SizeInBytes   uint64                              `protobuf:"varint,1,opt,name=size_in_bytes,json=sizeInBytes,proto3" json:"size_in_bytes,omitempty"`
	SaveTimeInMs  uint64                              `protobuf:"varint,2,opt,name=save_time_in_ms,json=saveTimeInMs,proto3" json:"save_time_in_ms,omitempty"`
	Hits          int32                               `protobuf:"varint,3,opt,name=hits,proto3" json:"hits,omitempty"`
	Misses        int32                               `protobuf:"varint,4,opt,name=misses,proto3" json:"misses,omitempty"`
	MissDetails   []*ActionCacheStatistics_MissDetail `protobuf:"bytes,5,rep,name=miss_details,json=missDetails,proto3" json:"miss_details,omitempty"`
	LoadTimeInMs  uint64                              `protobuf:"varint,6,opt,name=load_time_in_ms,json=loadTimeInMs,proto3" json:"load_time_in_ms,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ActionCacheStatistics) Reset() {
	*x = ActionCacheStatistics{}
	mi := &file_src_main_protobuf_action_cache_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ActionCacheStatistics) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ActionCacheStatistics) ProtoMessage() {}

func (x *ActionCacheStatistics) ProtoReflect() protoreflect.Message {
	mi := &file_src_main_protobuf_action_cache_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ActionCacheStatistics.ProtoReflect.Descriptor instead.
func (*ActionCacheStatistics) Descriptor() ([]byte, []int) {
	return file_src_main_protobuf_action_cache_proto_rawDescGZIP(), []int{0}
}

func (x *ActionCacheStatistics) GetSizeInBytes() uint64 {
	if x != nil {
		return x.SizeInBytes
	}
	return 0
}

func (x *ActionCacheStatistics) GetSaveTimeInMs() uint64 {
	if x != nil {
		return x.SaveTimeInMs
	}
	return 0
}

func (x *ActionCacheStatistics) GetHits() int32 {
	if x != nil {
		return x.Hits
	}
	return 0
}

func (x *ActionCacheStatistics) GetMisses() int32 {
	if x != nil {
		return x.Misses
	}
	return 0
}

func (x *ActionCacheStatistics) GetMissDetails() []*ActionCacheStatistics_MissDetail {
	if x != nil {
		return x.MissDetails
	}
	return nil
}

func (x *ActionCacheStatistics) GetLoadTimeInMs() uint64 {
	if x != nil {
		return x.LoadTimeInMs
	}
	return 0
}

type ActionCacheStatistics_MissDetail struct {
	state         protoimpl.MessageState           `protogen:"open.v1"`
	Reason        ActionCacheStatistics_MissReason `protobuf:"varint,1,opt,name=reason,proto3,enum=blaze.ActionCacheStatistics_MissReason" json:"reason,omitempty"`
	Count         int32                            `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ActionCacheStatistics_MissDetail) Reset() {
	*x = ActionCacheStatistics_MissDetail{}
	mi := &file_src_main_protobuf_action_cache_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ActionCacheStatistics_MissDetail) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ActionCacheStatistics_MissDetail) ProtoMessage() {}

func (x *ActionCacheStatistics_MissDetail) ProtoReflect() protoreflect.Message {
	mi := &file_src_main_protobuf_action_cache_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ActionCacheStatistics_MissDetail.ProtoReflect.Descriptor instead.
func (*ActionCacheStatistics_MissDetail) Descriptor() ([]byte, []int) {
	return file_src_main_protobuf_action_cache_proto_rawDescGZIP(), []int{0, 0}
}

func (x *ActionCacheStatistics_MissDetail) GetReason() ActionCacheStatistics_MissReason {
	if x != nil {
		return x.Reason
	}
	return ActionCacheStatistics_DIFFERENT_ACTION_KEY
}

func (x *ActionCacheStatistics_MissDetail) GetCount() int32 {
	if x != nil {
		return x.Count
	}
	return 0
}

var File_src_main_protobuf_action_cache_proto protoreflect.FileDescriptor

const file_src_main_protobuf_action_cache_proto_rawDesc = "" +
	"\n" +
	"$src/main/protobuf/action_cache.proto\x12\x05blaze\"\x9b\x04\n" +
	"\x15ActionCacheStatistics\x12\"\n" +
	"\rsize_in_bytes\x18\x01 \x01(\x04R\vsizeInBytes\x12%\n" +
	"\x0fsave_time_in_ms\x18\x02 \x01(\x04R\fsaveTimeInMs\x12\x12\n" +
	"\x04hits\x18\x03 \x01(\x05R\x04hits\x12\x16\n" +
	"\x06misses\x18\x04 \x01(\x05R\x06misses\x12J\n" +
	"\fmiss_details\x18\x05 \x03(\v2'.blaze.ActionCacheStatistics.MissDetailR\vmissDetails\x12%\n" +
	"\x0fload_time_in_ms\x18\x06 \x01(\x04R\floadTimeInMs\x1ac\n" +
	"\n" +
	"MissDetail\x12?\n" +
	"\x06reason\x18\x01 \x01(\x0e2'.blaze.ActionCacheStatistics.MissReasonR\x06reason\x12\x14\n" +
	"\x05count\x18\x02 \x01(\x05R\x05count\"\xb2\x01\n" +
	"\n" +
	"MissReason\x12\x18\n" +
	"\x14DIFFERENT_ACTION_KEY\x10\x00\x12\x12\n" +
	"\x0eDIFFERENT_DEPS\x10\x01\x12\x19\n" +
	"\x15DIFFERENT_ENVIRONMENT\x10\x02\x12\x13\n" +
	"\x0fDIFFERENT_FILES\x10\x03\x12\x19\n" +
	"\x15CORRUPTED_CACHE_ENTRY\x10\x04\x12\x0e\n" +
	"\n" +
	"NOT_CACHED\x10\x05\x12\x1b\n" +
	"\x17UNCONDITIONAL_EXECUTION\x10\x06B5\n" +
	"+com.google.devtools.build.lib.actions.cacheB\x06Protosb\x06proto3"

var (
	file_src_main_protobuf_action_cache_proto_rawDescOnce sync.Once
	file_src_main_protobuf_action_cache_proto_rawDescData []byte
)

func file_src_main_protobuf_action_cache_proto_rawDescGZIP() []byte {
	file_src_main_protobuf_action_cache_proto_rawDescOnce.Do(func() {
		file_src_main_protobuf_action_cache_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_src_main_protobuf_action_cache_proto_rawDesc), len(file_src_main_protobuf_action_cache_proto_rawDesc)))
	})
	return file_src_main_protobuf_action_cache_proto_rawDescData
}

var file_src_main_protobuf_action_cache_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_src_main_protobuf_action_cache_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_src_main_protobuf_action_cache_proto_goTypes = []any{
	(ActionCacheStatistics_MissReason)(0),    // 0: blaze.ActionCacheStatistics.MissReason
	(*ActionCacheStatistics)(nil),            // 1: blaze.ActionCacheStatistics
	(*ActionCacheStatistics_MissDetail)(nil), // 2: blaze.ActionCacheStatistics.MissDetail
}
var file_src_main_protobuf_action_cache_proto_depIdxs = []int32{
	2, // 0: blaze.ActionCacheStatistics.miss_details:type_name -> blaze.ActionCacheStatistics.MissDetail
	0, // 1: blaze.ActionCacheStatistics.MissDetail.reason:type_name -> blaze.ActionCacheStatistics.MissReason
	2, // [2:2] is the sub-list for method output_type
	2, // [2:2] is the sub-list for method input_type
	2, // [2:2] is the sub-list for extension type_name
	2, // [2:2] is the sub-list for extension extendee
	0, // [0:2] is the sub-list for field type_name
}

func init() { file_src_main_protobuf_action_cache_proto_init() }
func file_src_main_protobuf_action_cache_proto_init() {
	if File_src_main_protobuf_action_cache_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_src_main_protobuf_action_cache_proto_rawDesc), len(file_src_main_protobuf_action_cache_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   2,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_src_main_protobuf_action_cache_proto_goTypes,
		DependencyIndexes: file_src_main_protobuf_action_cache_proto_depIdxs,
		EnumInfos:         file_src_main_protobuf_action_cache_proto_enumTypes,
		MessageInfos:      file_src_main_protobuf_action_cache_proto_msgTypes,
	}.Build()
	File_src_main_protobuf_action_cache_proto = out.File
	file_src_main_protobuf_action_cache_proto_goTypes = nil
	file_src_main_protobuf_action_cache_proto_depIdxs = nil
}
