mirror of
https://github.com/status-im/consul.git
synced 2025-01-10 13:55:55 +00:00
9e48607893
Convert more of the xRoutes features that were skipped in an earlier PR into ComputedRoutes and make them work: - DestinationPolicy defaults - more timeouts - load balancer policy - request/response header mutations - urlrewrite - GRPCRoute matches
24 lines
388 B
Go
24 lines
388 B
Go
// Copyright (c) HashiCorp, Inc.
|
|
// SPDX-License-Identifier: BUSL-1.1
|
|
|
|
package protoutil
|
|
|
|
import (
|
|
"google.golang.org/protobuf/proto"
|
|
)
|
|
|
|
func Clone[T proto.Message](v T) T {
|
|
return proto.Clone(v).(T)
|
|
}
|
|
|
|
func CloneSlice[T proto.Message](in []T) []T {
|
|
if in == nil {
|
|
return nil
|
|
}
|
|
out := make([]T, 0, len(in))
|
|
for _, v := range in {
|
|
out = append(out, Clone[T](v))
|
|
}
|
|
return out
|
|
}
|