go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/server/quota/quotapb/op.pb.go (about)

     1  // Copyright 2022 The LUCI Authors. All rights reserved.
     2  // Use of this source code is governed under the Apache License, Version 2.0
     3  // that can be found in the LICENSE file.
     4  
     5  // Code generated by protoc-gen-go. DO NOT EDIT.
     6  // versions:
     7  // 	protoc-gen-go v1.31.0
     8  // 	protoc        v3.21.7
     9  // source: go.chromium.org/luci/server/quota/quotapb/op.proto
    10  
    11  package quotapb
    12  
    13  import (
    14  	_ "github.com/envoyproxy/protoc-gen-validate/validate"
    15  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    16  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    17  	reflect "reflect"
    18  	sync "sync"
    19  )
    20  
    21  const (
    22  	// Verify that this generated code is sufficiently up-to-date.
    23  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    24  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    25  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    26  )
    27  
    28  type Op_RelativeTo int32
    29  
    30  const (
    31  	// This will apply Delta by adding it to the Account's current balance.
    32  	//
    33  	// Note that if the Account is new, and `policy_ref` was omitted, this will
    34  	// fail with an error status MISSING_ACCOUNT.
    35  	Op_CURRENT_BALANCE Op_RelativeTo = 0
    36  	// This will apply Delta by adding it to zero; This effectively allows you
    37  	// to 'set' an Account to some specific value.
    38  	Op_ZERO Op_RelativeTo = 1
    39  	// This will apply Delta by adding it to the policy `default` value.
    40  	//
    41  	// This uses the `default` field of the Account's current policy, if
    42  	// `policy` on this Op is omitted. Otherwise this will use the `default`
    43  	// field of the new policy.
    44  	//
    45  	// It is an error to use this RelativeTo value with an Account containing no
    46  	// Policy, and this will result in an error status of POLICY_REQUIRED.
    47  	Op_DEFAULT Op_RelativeTo = 2
    48  	// This will apply Delta by adding it to the policy `limit` value.
    49  	// Usually this is used with a negative Delta.
    50  	//
    51  	// This uses the `limit` field of the Account's current policy, if
    52  	// `limit` on this Op is omitted. Otherwise this will use the `limit`
    53  	// field of the new policy.
    54  	//
    55  	// It is an error to use this RelativeTo value with an Account containing no
    56  	// Policy, and this will result in an error status of POLICY_REQUIRED.
    57  	Op_LIMIT Op_RelativeTo = 3
    58  )
    59  
    60  // Enum value maps for Op_RelativeTo.
    61  var (
    62  	Op_RelativeTo_name = map[int32]string{
    63  		0: "CURRENT_BALANCE",
    64  		1: "ZERO",
    65  		2: "DEFAULT",
    66  		3: "LIMIT",
    67  	}
    68  	Op_RelativeTo_value = map[string]int32{
    69  		"CURRENT_BALANCE": 0,
    70  		"ZERO":            1,
    71  		"DEFAULT":         2,
    72  		"LIMIT":           3,
    73  	}
    74  )
    75  
    76  func (x Op_RelativeTo) Enum() *Op_RelativeTo {
    77  	p := new(Op_RelativeTo)
    78  	*p = x
    79  	return p
    80  }
    81  
    82  func (x Op_RelativeTo) String() string {
    83  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    84  }
    85  
    86  func (Op_RelativeTo) Descriptor() protoreflect.EnumDescriptor {
    87  	return file_go_chromium_org_luci_server_quota_quotapb_op_proto_enumTypes[0].Descriptor()
    88  }
    89  
    90  func (Op_RelativeTo) Type() protoreflect.EnumType {
    91  	return &file_go_chromium_org_luci_server_quota_quotapb_op_proto_enumTypes[0]
    92  }
    93  
    94  func (x Op_RelativeTo) Number() protoreflect.EnumNumber {
    95  	return protoreflect.EnumNumber(x)
    96  }
    97  
    98  // Deprecated: Use Op_RelativeTo.Descriptor instead.
    99  func (Op_RelativeTo) EnumDescriptor() ([]byte, []int) {
   100  	return file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescGZIP(), []int{0, 0}
   101  }
   102  
   103  // NOTE: Options is a collection of bit-field values, not a standard enum.
   104  type Op_Options int32
   105  
   106  const (
   107  	// Default value; no implied behavior change.
   108  	Op_NO_OPTIONS Op_Options = 0
   109  	// If set, this Op can bring the account balance out of bounds; A positive
   110  	// Delta will be allowed to bring the account balance above the
   111  	// Policy.limit, and a negative Delta will be allowed to bring the account
   112  	// balance below zero.
   113  	//
   114  	// NOTE: Regardless of this setting, Refill will never cause an Account to
   115  	// go out of [0, Policy.limit], or cause an Account already in such a state
   116  	// to go MORE out of bounds. This option only affects the behavior of `delta`.
   117  	//
   118  	// REQUIRED to do an operation on an Account with no associated Policy.
   119  	//
   120  	// Mutually exclusive with DO_NOT_CAP_PROPOSED.
   121  	Op_IGNORE_POLICY_BOUNDS Op_Options = 1
   122  	// If set, and this Op's positive delta would be capped by the policy limit,
   123  	// AND the new value would be greater than the current balance, this Op will
   124  	// produce an error with status OVERFLOW.
   125  	//
   126  	// For example, if the account has a value 10 with a limit of 15, normally
   127  	// an Op{CURRENT_BALANCE, +10} would result in a balance of 15, but if it
   128  	// instead had this bit set, the Op would error out.
   129  	//
   130  	// Additionally, if an account has a value 20, with a limit of 10, normally
   131  	// an Op{CURRENT_BALANCE, -5} would result in a balance of 10 (the limit),
   132  	// but if it instead had this bit set, the Op would result in a balance of
   133  	// 15.
   134  	//
   135  	// Mutually exclusive with IGNORE_POLICY_BOUNDS.
   136  	// No-op for Ops with delta <= 0.
   137  	Op_DO_NOT_CAP_PROPOSED Op_Options = 2
   138  	// If set, and if this Op introduces a policy change, i.e., it contains a
   139  	// different policy_ref than what the account currently uses, the delta
   140  	// between the new Policy.limit and old Policy.limit will be added to the
   141  	// account's current balance. If the account has no existing policy_ref,
   142  	// WITH_POLICY_LIMIT_DELTA is a noop.
   143  	//
   144  	// For example, if an account has a value of 3 with a limit of 5, and
   145  	// the new policy_ref in this Op has a limit of 10, the account's value
   146  	// with be updated to 8 (3 + delta, where delta = 10 - 5) before the Op is
   147  	// applied. Similarly, if the limit were updated to 1 from 5, the account's
   148  	// value will be updated to -1 (3 + delta, where delta = 1 - 5) before the
   149  	// Op is applied.
   150  	//
   151  	// NOTE: IGNORE_POLICY_BOUNDS still works as documented if this option is
   152  	// set, and WITH_POLICY_LIMIT_DELTA takes the balance below zero.
   153  	Op_WITH_POLICY_LIMIT_DELTA Op_Options = 4 // Next entry is 8.
   154  )
   155  
   156  // Enum value maps for Op_Options.
   157  var (
   158  	Op_Options_name = map[int32]string{
   159  		0: "NO_OPTIONS",
   160  		1: "IGNORE_POLICY_BOUNDS",
   161  		2: "DO_NOT_CAP_PROPOSED",
   162  		4: "WITH_POLICY_LIMIT_DELTA",
   163  	}
   164  	Op_Options_value = map[string]int32{
   165  		"NO_OPTIONS":              0,
   166  		"IGNORE_POLICY_BOUNDS":    1,
   167  		"DO_NOT_CAP_PROPOSED":     2,
   168  		"WITH_POLICY_LIMIT_DELTA": 4,
   169  	}
   170  )
   171  
   172  func (x Op_Options) Enum() *Op_Options {
   173  	p := new(Op_Options)
   174  	*p = x
   175  	return p
   176  }
   177  
   178  func (x Op_Options) String() string {
   179  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   180  }
   181  
   182  func (Op_Options) Descriptor() protoreflect.EnumDescriptor {
   183  	return file_go_chromium_org_luci_server_quota_quotapb_op_proto_enumTypes[1].Descriptor()
   184  }
   185  
   186  func (Op_Options) Type() protoreflect.EnumType {
   187  	return &file_go_chromium_org_luci_server_quota_quotapb_op_proto_enumTypes[1]
   188  }
   189  
   190  func (x Op_Options) Number() protoreflect.EnumNumber {
   191  	return protoreflect.EnumNumber(x)
   192  }
   193  
   194  // Deprecated: Use Op_Options.Descriptor instead.
   195  func (Op_Options) EnumDescriptor() ([]byte, []int) {
   196  	return file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescGZIP(), []int{0, 1}
   197  }
   198  
   199  // A single operation to apply to the quota state.
   200  //
   201  // NOTE: Keep in sync with RawOp, which is the type which is actually passed to
   202  // the update lua script.
   203  type Op struct {
   204  	state         protoimpl.MessageState
   205  	sizeCache     protoimpl.SizeCache
   206  	unknownFields protoimpl.UnknownFields
   207  
   208  	// The Account to adjust the value for.
   209  	AccountId *AccountID `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
   210  	// The policy under which to adjust the account balance.
   211  	//
   212  	// If the policy is not specified, this will use the Policy already set on the
   213  	// Account.
   214  	//
   215  	// If the Account doesn't already exist, this Op will fail with an error of
   216  	// status MISSING_ACCOUNT, unless relative_to is ZERO.
   217  	PolicyId *PolicyID `protobuf:"bytes,2,opt,name=policy_id,json=policyId,proto3" json:"policy_id,omitempty"`
   218  	// The value that `delta` is relative to, when calculating the new balance.
   219  	RelativeTo Op_RelativeTo `protobuf:"varint,3,opt,name=relative_to,json=relativeTo,proto3,enum=go.chromium.org.luci.server.quota.quotapb.Op_RelativeTo" json:"relative_to,omitempty"`
   220  	// Delta is the number of units to add (or subtract) from the `relative_to` to
   221  	// get a new `proposed` balance for the given Account.
   222  	//
   223  	// If `proposed` would bring a positive Account balance below 0, this will an
   224  	// error with status UNDERFLOW.
   225  	//   - IGNORE_POLICY_BOUNDS will allow this Op to bring the Account balance
   226  	//     negative.
   227  	//
   228  	// If `proposed` would set the Account balance above Policy.limit, this will
   229  	// instead set the Account balance to Policy.limit.
   230  	//   - IGNORE_POLICY_BOUNDS will allow this Op to set the Account balance above
   231  	//     Policy.limit.
   232  	//   - DO_NOT_CAP_PROPOSED will cause this to be an error with status OVERFLOW.
   233  	//
   234  	// Adding to an account with a negative balance is OK, and will increase the
   235  	// balance by the given amount (subject to the rules above).
   236  	// Subtracting from an account with an over-limit balance is OK, and will
   237  	// decrease the balance by the given amount (subject to the rules above).
   238  	//
   239  	// Ops with relative_to CURRENT_BALANCE or ZERO and no Policy set have no
   240  	// boundaries (i.e. value can drop below zero or go all the way up to the
   241  	// maximum balance without issue).
   242  	//
   243  	// Note that Ops with `delta == 0` are legitimate, for example:
   244  	//   - as a means to apply a new policy without explicitly modifying
   245  	//     the balance.
   246  	//   - as a means to recalculate and save a refill policy value (note that
   247  	//     this should not effect the observed value of the balance; e.g. delta:
   248  	//     0 followed by delta: 1 at the same time will have the same cumulative
   249  	//     effect as just delta: 1)
   250  	//   - as a means to 'touch' an active account, resetting its updated_ts
   251  	//     time and any potential expiration timer.
   252  	Delta int64 `protobuf:"varint,4,opt,name=delta,proto3" json:"delta,omitempty"`
   253  	// Bitwise-OR of Options values.
   254  	Options uint32 `protobuf:"varint,5,opt,name=options,proto3" json:"options,omitempty"`
   255  }
   256  
   257  func (x *Op) Reset() {
   258  	*x = Op{}
   259  	if protoimpl.UnsafeEnabled {
   260  		mi := &file_go_chromium_org_luci_server_quota_quotapb_op_proto_msgTypes[0]
   261  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   262  		ms.StoreMessageInfo(mi)
   263  	}
   264  }
   265  
   266  func (x *Op) String() string {
   267  	return protoimpl.X.MessageStringOf(x)
   268  }
   269  
   270  func (*Op) ProtoMessage() {}
   271  
   272  func (x *Op) ProtoReflect() protoreflect.Message {
   273  	mi := &file_go_chromium_org_luci_server_quota_quotapb_op_proto_msgTypes[0]
   274  	if protoimpl.UnsafeEnabled && x != nil {
   275  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   276  		if ms.LoadMessageInfo() == nil {
   277  			ms.StoreMessageInfo(mi)
   278  		}
   279  		return ms
   280  	}
   281  	return mi.MessageOf(x)
   282  }
   283  
   284  // Deprecated: Use Op.ProtoReflect.Descriptor instead.
   285  func (*Op) Descriptor() ([]byte, []int) {
   286  	return file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescGZIP(), []int{0}
   287  }
   288  
   289  func (x *Op) GetAccountId() *AccountID {
   290  	if x != nil {
   291  		return x.AccountId
   292  	}
   293  	return nil
   294  }
   295  
   296  func (x *Op) GetPolicyId() *PolicyID {
   297  	if x != nil {
   298  		return x.PolicyId
   299  	}
   300  	return nil
   301  }
   302  
   303  func (x *Op) GetRelativeTo() Op_RelativeTo {
   304  	if x != nil {
   305  		return x.RelativeTo
   306  	}
   307  	return Op_CURRENT_BALANCE
   308  }
   309  
   310  func (x *Op) GetDelta() int64 {
   311  	if x != nil {
   312  		return x.Delta
   313  	}
   314  	return 0
   315  }
   316  
   317  func (x *Op) GetOptions() uint32 {
   318  	if x != nil {
   319  		return x.Options
   320  	}
   321  	return 0
   322  }
   323  
   324  var File_go_chromium_org_luci_server_quota_quotapb_op_proto protoreflect.FileDescriptor
   325  
   326  var file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDesc = []byte{
   327  	0x0a, 0x32, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
   328  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x71, 0x75,
   329  	0x6f, 0x74, 0x61, 0x2f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x70, 0x62, 0x2f, 0x6f, 0x70, 0x2e, 0x70,
   330  	0x72, 0x6f, 0x74, 0x6f, 0x12, 0x29, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
   331  	0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65,
   332  	0x72, 0x2e, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2e, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x70, 0x62, 0x1a,
   333  	0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61,
   334  	0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x33, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72,
   335  	0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x73,
   336  	0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2f, 0x71, 0x75, 0x6f, 0x74,
   337  	0x61, 0x70, 0x62, 0x2f, 0x69, 0x64, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8a, 0x04,
   338  	0x0a, 0x02, 0x4f, 0x70, 0x12, 0x5d, 0x0a, 0x0a, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
   339  	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x2e, 0x63, 0x68,
   340  	0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e,
   341  	0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2e, 0x71, 0x75, 0x6f,
   342  	0x74, 0x61, 0x70, 0x62, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x44, 0x42, 0x08,
   343  	0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0x52, 0x09, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
   344  	0x74, 0x49, 0x64, 0x12, 0x50, 0x0a, 0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64,
   345  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f,
   346  	0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x73, 0x65,
   347  	0x72, 0x76, 0x65, 0x72, 0x2e, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2e, 0x71, 0x75, 0x6f, 0x74, 0x61,
   348  	0x70, 0x62, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x44, 0x52, 0x08, 0x70, 0x6f, 0x6c,
   349  	0x69, 0x63, 0x79, 0x49, 0x64, 0x12, 0x59, 0x0a, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76,
   350  	0x65, 0x5f, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x2e,
   351  	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x6c, 0x75, 0x63,
   352  	0x69, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2e, 0x71,
   353  	0x75, 0x6f, 0x74, 0x61, 0x70, 0x62, 0x2e, 0x4f, 0x70, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69,
   354  	0x76, 0x65, 0x54, 0x6f, 0x52, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x6f,
   355  	0x12, 0x2e, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42,
   356  	0x18, 0xfa, 0x42, 0x15, 0x22, 0x13, 0x18, 0xd4, 0xf1, 0xa5, 0xb7, 0x92, 0x86, 0x02, 0x28, 0xac,
   357  	0x8e, 0xda, 0xc8, 0xed, 0xf9, 0xfd, 0xff, 0xff, 0x01, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61,
   358  	0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28,
   359  	0x0d, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x43, 0x0a, 0x0a, 0x52, 0x65,
   360  	0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x6f, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x55, 0x52, 0x52,
   361  	0x45, 0x4e, 0x54, 0x5f, 0x42, 0x41, 0x4c, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x00, 0x12, 0x08, 0x0a,
   362  	0x04, 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55,
   363  	0x4c, 0x54, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0x03, 0x22,
   364  	0x69, 0x0a, 0x07, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f,
   365  	0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x49, 0x47,
   366  	0x4e, 0x4f, 0x52, 0x45, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x42, 0x4f, 0x55, 0x4e,
   367  	0x44, 0x53, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x4f, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x43,
   368  	0x41, 0x50, 0x5f, 0x50, 0x52, 0x4f, 0x50, 0x4f, 0x53, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1b, 0x0a,
   369  	0x17, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x4c, 0x49, 0x4d,
   370  	0x49, 0x54, 0x5f, 0x44, 0x45, 0x4c, 0x54, 0x41, 0x10, 0x04, 0x42, 0x2b, 0x5a, 0x29, 0x67, 0x6f,
   371  	0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75,
   372  	0x63, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x2f,
   373  	0x71, 0x75, 0x6f, 0x74, 0x61, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   374  }
   375  
   376  var (
   377  	file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescOnce sync.Once
   378  	file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescData = file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDesc
   379  )
   380  
   381  func file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescGZIP() []byte {
   382  	file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescOnce.Do(func() {
   383  		file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescData)
   384  	})
   385  	return file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDescData
   386  }
   387  
   388  var file_go_chromium_org_luci_server_quota_quotapb_op_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
   389  var file_go_chromium_org_luci_server_quota_quotapb_op_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
   390  var file_go_chromium_org_luci_server_quota_quotapb_op_proto_goTypes = []interface{}{
   391  	(Op_RelativeTo)(0), // 0: go.chromium.org.luci.server.quota.quotapb.Op.RelativeTo
   392  	(Op_Options)(0),    // 1: go.chromium.org.luci.server.quota.quotapb.Op.Options
   393  	(*Op)(nil),         // 2: go.chromium.org.luci.server.quota.quotapb.Op
   394  	(*AccountID)(nil),  // 3: go.chromium.org.luci.server.quota.quotapb.AccountID
   395  	(*PolicyID)(nil),   // 4: go.chromium.org.luci.server.quota.quotapb.PolicyID
   396  }
   397  var file_go_chromium_org_luci_server_quota_quotapb_op_proto_depIdxs = []int32{
   398  	3, // 0: go.chromium.org.luci.server.quota.quotapb.Op.account_id:type_name -> go.chromium.org.luci.server.quota.quotapb.AccountID
   399  	4, // 1: go.chromium.org.luci.server.quota.quotapb.Op.policy_id:type_name -> go.chromium.org.luci.server.quota.quotapb.PolicyID
   400  	0, // 2: go.chromium.org.luci.server.quota.quotapb.Op.relative_to:type_name -> go.chromium.org.luci.server.quota.quotapb.Op.RelativeTo
   401  	3, // [3:3] is the sub-list for method output_type
   402  	3, // [3:3] is the sub-list for method input_type
   403  	3, // [3:3] is the sub-list for extension type_name
   404  	3, // [3:3] is the sub-list for extension extendee
   405  	0, // [0:3] is the sub-list for field type_name
   406  }
   407  
   408  func init() { file_go_chromium_org_luci_server_quota_quotapb_op_proto_init() }
   409  func file_go_chromium_org_luci_server_quota_quotapb_op_proto_init() {
   410  	if File_go_chromium_org_luci_server_quota_quotapb_op_proto != nil {
   411  		return
   412  	}
   413  	file_go_chromium_org_luci_server_quota_quotapb_ids_proto_init()
   414  	if !protoimpl.UnsafeEnabled {
   415  		file_go_chromium_org_luci_server_quota_quotapb_op_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   416  			switch v := v.(*Op); i {
   417  			case 0:
   418  				return &v.state
   419  			case 1:
   420  				return &v.sizeCache
   421  			case 2:
   422  				return &v.unknownFields
   423  			default:
   424  				return nil
   425  			}
   426  		}
   427  	}
   428  	type x struct{}
   429  	out := protoimpl.TypeBuilder{
   430  		File: protoimpl.DescBuilder{
   431  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   432  			RawDescriptor: file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDesc,
   433  			NumEnums:      2,
   434  			NumMessages:   1,
   435  			NumExtensions: 0,
   436  			NumServices:   0,
   437  		},
   438  		GoTypes:           file_go_chromium_org_luci_server_quota_quotapb_op_proto_goTypes,
   439  		DependencyIndexes: file_go_chromium_org_luci_server_quota_quotapb_op_proto_depIdxs,
   440  		EnumInfos:         file_go_chromium_org_luci_server_quota_quotapb_op_proto_enumTypes,
   441  		MessageInfos:      file_go_chromium_org_luci_server_quota_quotapb_op_proto_msgTypes,
   442  	}.Build()
   443  	File_go_chromium_org_luci_server_quota_quotapb_op_proto = out.File
   444  	file_go_chromium_org_luci_server_quota_quotapb_op_proto_rawDesc = nil
   445  	file_go_chromium_org_luci_server_quota_quotapb_op_proto_goTypes = nil
   446  	file_go_chromium_org_luci_server_quota_quotapb_op_proto_depIdxs = nil
   447  }