github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/util/interval/generic/internal/contract.go (about) 1 // Copyright 2020 The Cockroach Authors. 2 // 3 // Use of this software is governed by the Business Source License 4 // included in the file licenses/BSL.txt. 5 // 6 // As of the Change Date specified in that file, in accordance with 7 // the Business Source License, use of this software will be governed 8 // by the Apache License, Version 2.0, included in the file 9 // licenses/APL.txt. 10 11 package internal 12 13 // T is a Template type. The methods in the interface make up its contract. 14 //lint:ignore U1001 unused 15 type T interface { 16 ID() uint64 17 Key() []byte 18 EndKey() []byte 19 String() string 20 // Used for testing only. 21 New() T 22 SetID(uint64) 23 SetKey([]byte) 24 SetEndKey([]byte) 25 }