v1alpha1

package
v0.0.0-...-7d1f045 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 20, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the alb v1alpha1 API group +kubebuilder:object:generate=true +groupName=alb.yc.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "alb.yc.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type BackendTLS

type BackendTLS struct {
	// +kubebuilder:validation:Optional
	Sni string `json:"sni"`
	// +kubebuilder:validation:Optional
	TrustedCa string `json:"trustedCa"`
}

func (*BackendTLS) DeepCopy

func (in *BackendTLS) DeepCopy() *BackendTLS

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendTLS.

func (*BackendTLS) DeepCopyInto

func (in *BackendTLS) DeepCopyInto(out *BackendTLS)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GrpcBackend

type GrpcBackend struct {
	Name string `json:"name"`
	// +kubebuilder:default:=1
	Weight              int64                `json:"weight,omitempty"`
	Service             *ServiceBackend      `json:"service,omitempty"`
	TLS                 *BackendTLS          `json:"tls,omitempty"`
	LoadBalancingConfig *LoadBalancingConfig `json:"loadBalancingConfig,omitempty"`

	// +kubebuilder:validation:Optional
	HealthChecks []*HealthCheck `json:"healthChecks,omitempty"`
}

func (*GrpcBackend) DeepCopy

func (in *GrpcBackend) DeepCopy() *GrpcBackend

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrpcBackend.

func (*GrpcBackend) DeepCopyInto

func (in *GrpcBackend) DeepCopyInto(out *GrpcBackend)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GrpcBackendGroup

type GrpcBackendGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   GrpcBackendGroupSpec   `json:"spec,omitempty"`
	Status GrpcBackendGroupStatus `json:"status,omitempty"`
}

GrpcBackendGroup is the Schema for the grpcbackendgroups API

func (*GrpcBackendGroup) DeepCopy

func (in *GrpcBackendGroup) DeepCopy() *GrpcBackendGroup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrpcBackendGroup.

func (*GrpcBackendGroup) DeepCopyInto

func (in *GrpcBackendGroup) DeepCopyInto(out *GrpcBackendGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GrpcBackendGroup) DeepCopyObject

func (in *GrpcBackendGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GrpcBackendGroupList

type GrpcBackendGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []GrpcBackendGroup `json:"items"`
}

GrpcBackendGroupList contains a list of GrpcBackendGroup

func (*GrpcBackendGroupList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrpcBackendGroupList.

func (*GrpcBackendGroupList) DeepCopyInto

func (in *GrpcBackendGroupList) DeepCopyInto(out *GrpcBackendGroupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*GrpcBackendGroupList) DeepCopyObject

func (in *GrpcBackendGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type GrpcBackendGroupSpec

type GrpcBackendGroupSpec struct {

	// +kubebuilder:validation:Optional
	SessionAffinity *SessionAffinity `json:"sessionAffinity"`
	Backends        []*GrpcBackend   `json:"backends,omitempty"`
}

GrpcBackendGroupSpec defines the desired state of GrpcBackendGroup

func (*GrpcBackendGroupSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrpcBackendGroupSpec.

func (*GrpcBackendGroupSpec) DeepCopyInto

func (in *GrpcBackendGroupSpec) DeepCopyInto(out *GrpcBackendGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GrpcBackendGroupStatus

type GrpcBackendGroupStatus struct {
}

GrpcBackendGroupStatus defines the observed state of GrpcBackendGroup

func (*GrpcBackendGroupStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrpcBackendGroupStatus.

func (*GrpcBackendGroupStatus) DeepCopyInto

func (in *GrpcBackendGroupStatus) DeepCopyInto(out *GrpcBackendGroupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GrpcHealthCheck

type GrpcHealthCheck struct {
	ServiceName string `json:"serviceName"`
}

func (*GrpcHealthCheck) DeepCopy

func (in *GrpcHealthCheck) DeepCopy() *GrpcHealthCheck

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrpcHealthCheck.

func (*GrpcHealthCheck) DeepCopyInto

func (in *GrpcHealthCheck) DeepCopyInto(out *GrpcHealthCheck)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HealthCheck

type HealthCheck struct {
	HTTP *HttpHealthCheck `json:"http"`
	GRPC *GrpcHealthCheck `json:"grpc"`

	Port *int64 `json:"port"`

	// Health check timeout.
	//
	// The timeout is the time allowed for the target to respond to a check.
	// If the target doesn't respond in time, the check is considered failed
	// +kubebuilder:validation:Optional
	Timeout *metav1.Duration `json:"timeout"`

	// Base interval between consecutive health checks.
	// +kubebuilder:validation:Optional
	Interval *metav1.Duration `json:"interval"`

	// Number of consecutive successful health checks required to mark an unhealthy target as healthy.
	//
	// Both `0` and `1` values amount to one successful check required.
	//
	// The value is ignored when a load balancer is initialized; a target is marked healthy after one successful check.
	//
	// Default value: `0`.
	// +kubebuilder:validation:Optional
	HealthyThreshold int64 `json:"healthyThreshold"`

	// Number of consecutive failed health checks required to mark a healthy target as unhealthy.
	//
	// Both `0` and `1` values amount to one unsuccessful check required.
	//
	// The value is ignored if a health check is failed due to an HTTP `503 Service Unavailable` response from the target
	// (not applicable to TCP stream health checks). The target is immediately marked unhealthy.
	//
	// Default value: `0`.
	// +kubebuilder:validation:Optional
	UnhealthyThreshold int64 `json:"unhealthyThreshold"`
}

func (*HealthCheck) DeepCopy

func (in *HealthCheck) DeepCopy() *HealthCheck

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheck.

func (*HealthCheck) DeepCopyInto

func (in *HealthCheck) DeepCopyInto(out *HealthCheck)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HttpBackend

type HttpBackend struct {
	Name string `json:"name"`
	// +kubebuilder:default:=1
	Weight              int64                 `json:"weight,omitempty"`
	UseHTTP2            bool                  `json:"useHttp2,omitempty"`
	Service             *ServiceBackend       `json:"service,omitempty"`
	StorageBucket       *StorageBucketBackend `json:"storageBucket,omitempty"`
	TLS                 *BackendTLS           `json:"tls,omitempty"`
	LoadBalancingConfig *LoadBalancingConfig  `json:"loadBalancingConfig,omitempty"`

	// +kubebuilder:validation:Optional
	HealthChecks []*HealthCheck `json:"healthChecks,omitempty"`
}

func (*HttpBackend) DeepCopy

func (in *HttpBackend) DeepCopy() *HttpBackend

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpBackend.

func (*HttpBackend) DeepCopyInto

func (in *HttpBackend) DeepCopyInto(out *HttpBackend)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HttpBackendGroup

type HttpBackendGroup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   HttpBackendGroupSpec   `json:"spec,omitempty"`
	Status HttpBackendGroupStatus `json:"status,omitempty"`
}

HttpBackendGroup is the Schema for the httpbackendgroups API

func (*HttpBackendGroup) DeepCopy

func (in *HttpBackendGroup) DeepCopy() *HttpBackendGroup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpBackendGroup.

func (*HttpBackendGroup) DeepCopyInto

func (in *HttpBackendGroup) DeepCopyInto(out *HttpBackendGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*HttpBackendGroup) DeepCopyObject

func (in *HttpBackendGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HttpBackendGroupList

type HttpBackendGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []HttpBackendGroup `json:"items"`
}

HttpBackendGroupList contains a list of HttpBackendGroup

func (*HttpBackendGroupList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpBackendGroupList.

func (*HttpBackendGroupList) DeepCopyInto

func (in *HttpBackendGroupList) DeepCopyInto(out *HttpBackendGroupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*HttpBackendGroupList) DeepCopyObject

func (in *HttpBackendGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HttpBackendGroupSpec

type HttpBackendGroupSpec struct {

	// +kubebuilder:validation:Optional
	SessionAffinity *SessionAffinity `json:"sessionAffinity"`
	Backends        []*HttpBackend   `json:"backends,omitempty"`
}

HttpBackendGroupSpec defines the desired state of HttpBackendGroup

func (*HttpBackendGroupSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpBackendGroupSpec.

func (*HttpBackendGroupSpec) DeepCopyInto

func (in *HttpBackendGroupSpec) DeepCopyInto(out *HttpBackendGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HttpBackendGroupStatus

type HttpBackendGroupStatus struct {
}

HttpBackendGroupStatus defines the observed state of HttpBackendGroup

func (*HttpBackendGroupStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpBackendGroupStatus.

func (*HttpBackendGroupStatus) DeepCopyInto

func (in *HttpBackendGroupStatus) DeepCopyInto(out *HttpBackendGroupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HttpHealthCheck

type HttpHealthCheck struct {
	Path string `json:"path"`
}

func (*HttpHealthCheck) DeepCopy

func (in *HttpHealthCheck) DeepCopy() *HttpHealthCheck

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpHealthCheck.

func (*HttpHealthCheck) DeepCopyInto

func (in *HttpHealthCheck) DeepCopyInto(out *HttpHealthCheck)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IngressGroupSettings

type IngressGroupSettings struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +kubebuilder:validation:Optional
	LogOptions *LogOptions `json:"logOptions"`
}

func (*IngressGroupSettings) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGroupSettings.

func (*IngressGroupSettings) DeepCopyInto

func (in *IngressGroupSettings) DeepCopyInto(out *IngressGroupSettings)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IngressGroupSettings) DeepCopyObject

func (in *IngressGroupSettings) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IngressGroupSettingsList

type IngressGroupSettingsList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []IngressGroupSettings `json:"items"`
}

IngressGroupSettingsList contains a list of IngressGroupSettings

func (*IngressGroupSettingsList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGroupSettingsList.

func (*IngressGroupSettingsList) DeepCopyInto

func (in *IngressGroupSettingsList) DeepCopyInto(out *IngressGroupSettingsList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IngressGroupSettingsList) DeepCopyObject

func (in *IngressGroupSettingsList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IngressGroupStatus

type IngressGroupStatus struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// +kubebuilder:validation:Optional
	LoadBalancerID string `json:"loadBalancerID"`
	// +kubebuilder:validation:Optional
	HTTPRouterID string `json:"httpRouterID"`
	// +kubebuilder:validation:Optional
	TLSRouterID string `json:"tlsRouterID"`
	// +kubebuilder:validation:Optional
	BackendGroupIDs []string `json:"backendGroupIDs"`
	// +kubebuilder:validation:Optional
	TargetGroupIDs []string `json:"targetGroupIDs"`
}

func (*IngressGroupStatus) DeepCopy

func (in *IngressGroupStatus) DeepCopy() *IngressGroupStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGroupStatus.

func (*IngressGroupStatus) DeepCopyInto

func (in *IngressGroupStatus) DeepCopyInto(out *IngressGroupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IngressGroupStatus) DeepCopyObject

func (in *IngressGroupStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IngressGroupStatusList

type IngressGroupStatusList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []IngressGroupStatus `json:"items"`
}

IngressGroupStatusList contains a list of IngressGroupStatus

func (*IngressGroupStatusList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressGroupStatusList.

func (*IngressGroupStatusList) DeepCopyInto

func (in *IngressGroupStatusList) DeepCopyInto(out *IngressGroupStatusList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IngressGroupStatusList) DeepCopyObject

func (in *IngressGroupStatusList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LoadBalancingConfig

type LoadBalancingConfig struct {
	//+kubebuilder:default=RANDOM
	BalancerMode string `json:"balancerMode"`
}

func (*LoadBalancingConfig) DeepCopy

func (in *LoadBalancingConfig) DeepCopy() *LoadBalancingConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancingConfig.

func (*LoadBalancingConfig) DeepCopyInto

func (in *LoadBalancingConfig) DeepCopyInto(out *LoadBalancingConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LogDiscardRule

type LogDiscardRule struct {
	// HTTP codes that should be discarded.
	// +kubebuilder:validation:Optional
	HTTPCodes []int64 `json:"httpCodes"`

	// Groups of HTTP codes like 4xx that should be discarded.
	// +kubebuilder:validation:Optional
	HTTPCodeIntervals []string `json:"httpCodeIntervals"`

	// GRPC codes that should be discarded
	// +kubebuilder:validation:Optional
	GRPCCodes []string `json:"grpcCodes"`

	// Percent of logs to be discarded: 0 - keep all, 100 or unset - discard all
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Maximum=100
	// +kubebuilder:validation:Minimum=0
	DiscardPercent *int64 `json:"discardPercent"`
}

LogDiscardRule discards a fraction of logs with certain codes. If neither codes nor intervals are provided, rule applies to all logs.

func (*LogDiscardRule) DeepCopy

func (in *LogDiscardRule) DeepCopy() *LogDiscardRule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogDiscardRule.

func (*LogDiscardRule) DeepCopyInto

func (in *LogDiscardRule) DeepCopyInto(out *LogDiscardRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LogOptions

type LogOptions struct {
	// Cloud Logging log group ID to store access logs.
	// If not set then logs will be stored in default log group for the folder
	// where load balancer located.
	// +kubebuilder:validation:Optional
	LogGroupID string `json:"logGroupID"`

	// Ordered list of rules, first matching rule applies
	// +kubebuilder:validation:Optional
	DiscardRules []*LogDiscardRule `json:"discardRules"`

	// Do not send logs to Cloud Logging log group.
	// +kubebuilder:validation:Optional
	Disable bool `json:"disable"`
}

func (*LogOptions) DeepCopy

func (in *LogOptions) DeepCopy() *LogOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogOptions.

func (*LogOptions) DeepCopyInto

func (in *LogOptions) DeepCopyInto(out *LogOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceBackend

type ServiceBackend struct {
	Name string             `json:"name"`
	Port ServiceBackendPort `json:"port"`
}

func (*ServiceBackend) DeepCopy

func (in *ServiceBackend) DeepCopy() *ServiceBackend

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBackend.

func (*ServiceBackend) DeepCopyInto

func (in *ServiceBackend) DeepCopyInto(out *ServiceBackend)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceBackendPort

type ServiceBackendPort struct {
	// Name is the name of the port on the Service.
	// This is a mutually exclusive setting with "Number".
	Name string `json:"name,omitempty"`

	// Number is the numerical port number (e.g. 80) on the Service.
	// This is a mutually exclusive setting with "Name".
	Number int32 `json:"number,omitempty"`
}

ServiceBackendPort is the service port being referenced. See k8s.io/api/networking/v1/ServiceBackendPort

func (*ServiceBackendPort) DeepCopy

func (in *ServiceBackendPort) DeepCopy() *ServiceBackendPort

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceBackendPort.

func (*ServiceBackendPort) DeepCopyInto

func (in *ServiceBackendPort) DeepCopyInto(out *ServiceBackendPort)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SessionAffinity

type SessionAffinity struct {
	// +kubebuilder:validation:Optional
	Cookie *SessionAffinityCookie `json:"cookie"`
	// +kubebuilder:validation:Optional
	Connection *SessionAffinityConnection `json:"connection"`
	// +kubebuilder:validation:Optional
	Header *SessionAffinityHeader `json:"header"`
}

func (*SessionAffinity) DeepCopy

func (in *SessionAffinity) DeepCopy() *SessionAffinity

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionAffinity.

func (*SessionAffinity) DeepCopyInto

func (in *SessionAffinity) DeepCopyInto(out *SessionAffinity)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SessionAffinityConnection

type SessionAffinityConnection struct {
	SourceIP bool `json:"sourceIP"`
}

func (*SessionAffinityConnection) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionAffinityConnection.

func (*SessionAffinityConnection) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SessionAffinityCookie

type SessionAffinityCookie struct {
	Name string           `json:"name"`
	TTL  *metav1.Duration `json:"ttl,omitempty"`
}

func (*SessionAffinityCookie) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionAffinityCookie.

func (*SessionAffinityCookie) DeepCopyInto

func (in *SessionAffinityCookie) DeepCopyInto(out *SessionAffinityCookie)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SessionAffinityHeader

type SessionAffinityHeader struct {
	HeaderName string `json:"headerName"`
}

func (*SessionAffinityHeader) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionAffinityHeader.

func (*SessionAffinityHeader) DeepCopyInto

func (in *SessionAffinityHeader) DeepCopyInto(out *SessionAffinityHeader)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type StorageBucketBackend

type StorageBucketBackend struct {
	Name string `json:"name"`
}

func (*StorageBucketBackend) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageBucketBackend.

func (*StorageBucketBackend) DeepCopyInto

func (in *StorageBucketBackend) DeepCopyInto(out *StorageBucketBackend)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL