v1

package
v0.0.0-...-41059d1 Latest Latest
Warning

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

Go to latest
Published: Apr 27, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	P4Ids_Prefix_name = map[int32]string{
		0:   "UNSPECIFIED",
		1:   "ACTION",
		2:   "TABLE",
		3:   "VALUE_SET",
		4:   "CONTROLLER_HEADER",
		16:  "PSA_EXTERNS_START",
		17:  "ACTION_PROFILE",
		18:  "COUNTER",
		19:  "DIRECT_COUNTER",
		20:  "METER",
		21:  "DIRECT_METER",
		22:  "REGISTER",
		23:  "DIGEST",
		128: "OTHER_EXTERNS_START",
		129: "MATCH_LOOKUP_TABLE",
		130: "TERNARY_MATCH_LOOKUP_TABLE",
		255: "MAX",
	}
	P4Ids_Prefix_value = map[string]int32{
		"UNSPECIFIED":                0,
		"ACTION":                     1,
		"TABLE":                      2,
		"VALUE_SET":                  3,
		"CONTROLLER_HEADER":          4,
		"PSA_EXTERNS_START":          16,
		"ACTION_PROFILE":             17,
		"COUNTER":                    18,
		"DIRECT_COUNTER":             19,
		"METER":                      20,
		"DIRECT_METER":               21,
		"REGISTER":                   22,
		"DIGEST":                     23,
		"OTHER_EXTERNS_START":        128,
		"MATCH_LOOKUP_TABLE":         129,
		"TERNARY_MATCH_LOOKUP_TABLE": 130,
		"MAX":                        255,
	}
)

Enum value maps for P4Ids_Prefix.

View Source
var (
	MatchField_MatchType_name = map[int32]string{
		0: "UNSPECIFIED",
		2: "EXACT",
		3: "LPM",
		4: "TERNARY",
		5: "RANGE",
		6: "OPTIONAL",
	}
	MatchField_MatchType_value = map[string]int32{
		"UNSPECIFIED": 0,
		"EXACT":       2,
		"LPM":         3,
		"TERNARY":     4,
		"RANGE":       5,
		"OPTIONAL":    6,
	}
)

Enum value maps for MatchField_MatchType.

View Source
var (
	Table_IdleTimeoutBehavior_name = map[int32]string{
		0: "NO_TIMEOUT",
		1: "NOTIFY_CONTROL",
	}
	Table_IdleTimeoutBehavior_value = map[string]int32{
		"NO_TIMEOUT":     0,
		"NOTIFY_CONTROL": 1,
	}
)

Enum value maps for Table_IdleTimeoutBehavior.

View Source
var (
	ActionRef_Scope_name = map[int32]string{
		0: "TABLE_AND_DEFAULT",
		1: "TABLE_ONLY",
		2: "DEFAULT_ONLY",
	}
	ActionRef_Scope_value = map[string]int32{
		"TABLE_AND_DEFAULT": 0,
		"TABLE_ONLY":        1,
		"DEFAULT_ONLY":      2,
	}
)

Enum value maps for ActionRef_Scope.

View Source
var (
	CounterSpec_Unit_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "BYTES",
		2: "PACKETS",
		3: "BOTH",
	}
	CounterSpec_Unit_value = map[string]int32{
		"UNSPECIFIED": 0,
		"BYTES":       1,
		"PACKETS":     2,
		"BOTH":        3,
	}
)

Enum value maps for CounterSpec_Unit.

View Source
var (
	MeterSpec_Unit_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "BYTES",
		2: "PACKETS",
	}
	MeterSpec_Unit_value = map[string]int32{
		"UNSPECIFIED": 0,
		"BYTES":       1,
		"PACKETS":     2,
	}
)

Enum value maps for MeterSpec_Unit.

View Source
var File_p4_config_v1_p4info_proto protoreflect.FileDescriptor
View Source
var File_p4_config_v1_p4types_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Action

type Action struct {
	Preamble *Preamble       `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	Params   []*Action_Param `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"`
	// contains filtered or unexported fields
}

func (*Action) Descriptor deprecated

func (*Action) Descriptor() ([]byte, []int)

Deprecated: Use Action.ProtoReflect.Descriptor instead.

func (*Action) GetParams

func (x *Action) GetParams() []*Action_Param

func (*Action) GetPreamble

func (x *Action) GetPreamble() *Preamble

func (*Action) ProtoMessage

func (*Action) ProtoMessage()

func (*Action) ProtoReflect

func (x *Action) ProtoReflect() protoreflect.Message

func (*Action) Reset

func (x *Action) Reset()

func (*Action) String

func (x *Action) String() string

type ActionProfile

type ActionProfile struct {
	Preamble *Preamble `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	// the ids of the tables sharing this action profile
	TableIds []uint32 `protobuf:"varint,2,rep,packed,name=table_ids,json=tableIds,proto3" json:"table_ids,omitempty"`
	// true iff the action profile used dynamic selection
	WithSelector bool `protobuf:"varint,3,opt,name=with_selector,json=withSelector,proto3" json:"with_selector,omitempty"`
	// max number of member entries across all groups if the action profile does
	// not have a selector. Otherwise, semantics as specified by
	// `selector_size_semantics` below.
	Size int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// 0 if the action profile does not have a selector. Otherwise, semantics as
	// specified by `selector_size_semantics` below.
	MaxGroupSize int32 `protobuf:"varint,5,opt,name=max_group_size,json=maxGroupSize,proto3" json:"max_group_size,omitempty"`
	// specifies the semantics of `size` and `max_group_size` above
	//
	// Types that are assignable to SelectorSizeSemantics:
	//	*ActionProfile_SumOfWeights_
	//	*ActionProfile_SumOfMembers_
	SelectorSizeSemantics isActionProfile_SelectorSizeSemantics `protobuf_oneof:"selector_size_semantics"`
	// contains filtered or unexported fields
}

func (*ActionProfile) Descriptor deprecated

func (*ActionProfile) Descriptor() ([]byte, []int)

Deprecated: Use ActionProfile.ProtoReflect.Descriptor instead.

func (*ActionProfile) GetMaxGroupSize

func (x *ActionProfile) GetMaxGroupSize() int32

func (*ActionProfile) GetPreamble

func (x *ActionProfile) GetPreamble() *Preamble

func (*ActionProfile) GetSelectorSizeSemantics

func (m *ActionProfile) GetSelectorSizeSemantics() isActionProfile_SelectorSizeSemantics

func (*ActionProfile) GetSize

func (x *ActionProfile) GetSize() int64

func (*ActionProfile) GetSumOfMembers

func (x *ActionProfile) GetSumOfMembers() *ActionProfile_SumOfMembers

func (*ActionProfile) GetSumOfWeights

func (x *ActionProfile) GetSumOfWeights() *ActionProfile_SumOfWeights

func (*ActionProfile) GetTableIds

func (x *ActionProfile) GetTableIds() []uint32

func (*ActionProfile) GetWithSelector

func (x *ActionProfile) GetWithSelector() bool

func (*ActionProfile) ProtoMessage

func (*ActionProfile) ProtoMessage()

func (*ActionProfile) ProtoReflect

func (x *ActionProfile) ProtoReflect() protoreflect.Message

func (*ActionProfile) Reset

func (x *ActionProfile) Reset()

func (*ActionProfile) String

func (x *ActionProfile) String() string

type ActionProfile_SumOfMembers

type ActionProfile_SumOfMembers struct {

	// the maximum weight of each individual member in a group.
	MaxMemberWeight *int32 `protobuf:"varint,1,opt,name=max_member_weight,json=maxMemberWeight,proto3,oneof" json:"max_member_weight,omitempty"`
	// contains filtered or unexported fields
}

indicates that `size` and `max_group_size` represent the maximum number of members that can be present across all selector groups and within a single selector group respectively.

func (*ActionProfile_SumOfMembers) Descriptor deprecated

func (*ActionProfile_SumOfMembers) Descriptor() ([]byte, []int)

Deprecated: Use ActionProfile_SumOfMembers.ProtoReflect.Descriptor instead.

func (*ActionProfile_SumOfMembers) GetMaxMemberWeight

func (x *ActionProfile_SumOfMembers) GetMaxMemberWeight() int32

func (*ActionProfile_SumOfMembers) ProtoMessage

func (*ActionProfile_SumOfMembers) ProtoMessage()

func (*ActionProfile_SumOfMembers) ProtoReflect

func (*ActionProfile_SumOfMembers) Reset

func (x *ActionProfile_SumOfMembers) Reset()

func (*ActionProfile_SumOfMembers) String

func (x *ActionProfile_SumOfMembers) String() string

type ActionProfile_SumOfMembers_

type ActionProfile_SumOfMembers_ struct {
	// group size is the sum of the group's members.
	SumOfMembers *ActionProfile_SumOfMembers `protobuf:"bytes,7,opt,name=sum_of_members,json=sumOfMembers,proto3,oneof"`
}

type ActionProfile_SumOfWeights

type ActionProfile_SumOfWeights struct {
	// contains filtered or unexported fields
}

indicates that `size` and `max_group_size` represent the maximum sum of weights that can be present across all selector groups and within a single selector group respectively.

func (*ActionProfile_SumOfWeights) Descriptor deprecated

func (*ActionProfile_SumOfWeights) Descriptor() ([]byte, []int)

Deprecated: Use ActionProfile_SumOfWeights.ProtoReflect.Descriptor instead.

func (*ActionProfile_SumOfWeights) ProtoMessage

func (*ActionProfile_SumOfWeights) ProtoMessage()

func (*ActionProfile_SumOfWeights) ProtoReflect

func (*ActionProfile_SumOfWeights) Reset

func (x *ActionProfile_SumOfWeights) Reset()

func (*ActionProfile_SumOfWeights) String

func (x *ActionProfile_SumOfWeights) String() string

type ActionProfile_SumOfWeights_

type ActionProfile_SumOfWeights_ struct {
	// group size is the sum of the group's weights.
	SumOfWeights *ActionProfile_SumOfWeights `protobuf:"bytes,6,opt,name=sum_of_weights,json=sumOfWeights,proto3,oneof"`
}

type ActionRef

type ActionRef struct {
	Id          uint32          `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Scope       ActionRef_Scope `protobuf:"varint,3,opt,name=scope,proto3,enum=p4.config.v1.ActionRef_Scope" json:"scope,omitempty"`
	Annotations []string        `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,5,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

used to list all possible actions in a Table

func (*ActionRef) Descriptor deprecated

func (*ActionRef) Descriptor() ([]byte, []int)

Deprecated: Use ActionRef.ProtoReflect.Descriptor instead.

func (*ActionRef) GetAnnotationLocations

func (x *ActionRef) GetAnnotationLocations() []*SourceLocation

func (*ActionRef) GetAnnotations

func (x *ActionRef) GetAnnotations() []string

func (*ActionRef) GetId

func (x *ActionRef) GetId() uint32

func (*ActionRef) GetScope

func (x *ActionRef) GetScope() ActionRef_Scope

func (*ActionRef) GetStructuredAnnotations

func (x *ActionRef) GetStructuredAnnotations() []*StructuredAnnotation

func (*ActionRef) ProtoMessage

func (*ActionRef) ProtoMessage()

func (*ActionRef) ProtoReflect

func (x *ActionRef) ProtoReflect() protoreflect.Message

func (*ActionRef) Reset

func (x *ActionRef) Reset()

func (*ActionRef) String

func (x *ActionRef) String() string

type ActionRef_Scope

type ActionRef_Scope int32
const (
	ActionRef_TABLE_AND_DEFAULT ActionRef_Scope = 0
	ActionRef_TABLE_ONLY        ActionRef_Scope = 1
	ActionRef_DEFAULT_ONLY      ActionRef_Scope = 2
)

func (ActionRef_Scope) Descriptor

func (ActionRef_Scope) Enum

func (x ActionRef_Scope) Enum() *ActionRef_Scope

func (ActionRef_Scope) EnumDescriptor deprecated

func (ActionRef_Scope) EnumDescriptor() ([]byte, []int)

Deprecated: Use ActionRef_Scope.Descriptor instead.

func (ActionRef_Scope) Number

func (ActionRef_Scope) String

func (x ActionRef_Scope) String() string

func (ActionRef_Scope) Type

type Action_Param

type Action_Param struct {
	Id          uint32   `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name        string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Annotations []string `protobuf:"bytes,3,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations []*SourceLocation `protobuf:"bytes,8,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	Bitwidth            int32             `protobuf:"varint,4,opt,name=bitwidth,proto3" json:"bitwidth,omitempty"`
	// Documentation of the Param
	Doc *Documentation `protobuf:"bytes,5,opt,name=doc,proto3" json:"doc,omitempty"`
	// unset if not user-defined type
	TypeName              *P4NamedType            `protobuf:"bytes,6,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,7,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*Action_Param) Descriptor deprecated

func (*Action_Param) Descriptor() ([]byte, []int)

Deprecated: Use Action_Param.ProtoReflect.Descriptor instead.

func (*Action_Param) GetAnnotationLocations

func (x *Action_Param) GetAnnotationLocations() []*SourceLocation

func (*Action_Param) GetAnnotations

func (x *Action_Param) GetAnnotations() []string

func (*Action_Param) GetBitwidth

func (x *Action_Param) GetBitwidth() int32

func (*Action_Param) GetDoc

func (x *Action_Param) GetDoc() *Documentation

func (*Action_Param) GetId

func (x *Action_Param) GetId() uint32

func (*Action_Param) GetName

func (x *Action_Param) GetName() string

func (*Action_Param) GetStructuredAnnotations

func (x *Action_Param) GetStructuredAnnotations() []*StructuredAnnotation

func (*Action_Param) GetTypeName

func (x *Action_Param) GetTypeName() *P4NamedType

func (*Action_Param) ProtoMessage

func (*Action_Param) ProtoMessage()

func (*Action_Param) ProtoReflect

func (x *Action_Param) ProtoReflect() protoreflect.Message

func (*Action_Param) Reset

func (x *Action_Param) Reset()

func (*Action_Param) String

func (x *Action_Param) String() string

type ControllerPacketMetadata

type ControllerPacketMetadata struct {

	// preamble.name and preamble.id will specify header type ("packet_out" or
	// "packet_in" for now).
	Preamble *Preamble `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	// Ordered based on header layout.
	// This is a constraint on the generator of this P4Info.
	Metadata []*ControllerPacketMetadata_Metadata `protobuf:"bytes,2,rep,name=metadata,proto3" json:"metadata,omitempty"`
	// contains filtered or unexported fields
}

Any metadata associated with controller Packet-IO (Packet-In or Packet-Out) is modeled as P4 headers carrying special annotations @controller_header("packet_out") and @controller_header("packet_in") respectively. There can be at most one header each with these annotations. This message captures the info contained within these special headers, and used in p4runtime.proto to supply the metadata.

func (*ControllerPacketMetadata) Descriptor deprecated

func (*ControllerPacketMetadata) Descriptor() ([]byte, []int)

Deprecated: Use ControllerPacketMetadata.ProtoReflect.Descriptor instead.

func (*ControllerPacketMetadata) GetMetadata

func (*ControllerPacketMetadata) GetPreamble

func (x *ControllerPacketMetadata) GetPreamble() *Preamble

func (*ControllerPacketMetadata) ProtoMessage

func (*ControllerPacketMetadata) ProtoMessage()

func (*ControllerPacketMetadata) ProtoReflect

func (x *ControllerPacketMetadata) ProtoReflect() protoreflect.Message

func (*ControllerPacketMetadata) Reset

func (x *ControllerPacketMetadata) Reset()

func (*ControllerPacketMetadata) String

func (x *ControllerPacketMetadata) String() string

type ControllerPacketMetadata_Metadata

type ControllerPacketMetadata_Metadata struct {
	Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// This is the name of the header field (not fully-qualified), similar
	// to e.g. Action.Param.name.
	Name        string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Annotations []string `protobuf:"bytes,3,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations []*SourceLocation `protobuf:"bytes,7,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	Bitwidth            int32             `protobuf:"varint,4,opt,name=bitwidth,proto3" json:"bitwidth,omitempty"`
	// unset if not user-defined type
	TypeName              *P4NamedType            `protobuf:"bytes,5,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,6,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*ControllerPacketMetadata_Metadata) Descriptor deprecated

func (*ControllerPacketMetadata_Metadata) Descriptor() ([]byte, []int)

Deprecated: Use ControllerPacketMetadata_Metadata.ProtoReflect.Descriptor instead.

func (*ControllerPacketMetadata_Metadata) GetAnnotationLocations

func (x *ControllerPacketMetadata_Metadata) GetAnnotationLocations() []*SourceLocation

func (*ControllerPacketMetadata_Metadata) GetAnnotations

func (x *ControllerPacketMetadata_Metadata) GetAnnotations() []string

func (*ControllerPacketMetadata_Metadata) GetBitwidth

func (x *ControllerPacketMetadata_Metadata) GetBitwidth() int32

func (*ControllerPacketMetadata_Metadata) GetId

func (*ControllerPacketMetadata_Metadata) GetName

func (*ControllerPacketMetadata_Metadata) GetStructuredAnnotations

func (x *ControllerPacketMetadata_Metadata) GetStructuredAnnotations() []*StructuredAnnotation

func (*ControllerPacketMetadata_Metadata) GetTypeName

func (*ControllerPacketMetadata_Metadata) ProtoMessage

func (*ControllerPacketMetadata_Metadata) ProtoMessage()

func (*ControllerPacketMetadata_Metadata) ProtoReflect

func (*ControllerPacketMetadata_Metadata) Reset

func (*ControllerPacketMetadata_Metadata) String

type Counter

type Counter struct {
	Preamble *Preamble    `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	Spec     *CounterSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"`
	// number of entries in the counter array
	Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
	// unset if index is not user-defined type
	IndexTypeName *P4NamedType `protobuf:"bytes,4,opt,name=index_type_name,json=indexTypeName,proto3" json:"index_type_name,omitempty"`
	// contains filtered or unexported fields
}

func (*Counter) Descriptor deprecated

func (*Counter) Descriptor() ([]byte, []int)

Deprecated: Use Counter.ProtoReflect.Descriptor instead.

func (*Counter) GetIndexTypeName

func (x *Counter) GetIndexTypeName() *P4NamedType

func (*Counter) GetPreamble

func (x *Counter) GetPreamble() *Preamble

func (*Counter) GetSize

func (x *Counter) GetSize() int64

func (*Counter) GetSpec

func (x *Counter) GetSpec() *CounterSpec

func (*Counter) ProtoMessage

func (*Counter) ProtoMessage()

func (*Counter) ProtoReflect

func (x *Counter) ProtoReflect() protoreflect.Message

func (*Counter) Reset

func (x *Counter) Reset()

func (*Counter) String

func (x *Counter) String() string

type CounterSpec

type CounterSpec struct {
	Unit CounterSpec_Unit `protobuf:"varint,1,opt,name=unit,proto3,enum=p4.config.v1.CounterSpec_Unit" json:"unit,omitempty"`
	// contains filtered or unexported fields
}

func (*CounterSpec) Descriptor deprecated

func (*CounterSpec) Descriptor() ([]byte, []int)

Deprecated: Use CounterSpec.ProtoReflect.Descriptor instead.

func (*CounterSpec) GetUnit

func (x *CounterSpec) GetUnit() CounterSpec_Unit

func (*CounterSpec) ProtoMessage

func (*CounterSpec) ProtoMessage()

func (*CounterSpec) ProtoReflect

func (x *CounterSpec) ProtoReflect() protoreflect.Message

func (*CounterSpec) Reset

func (x *CounterSpec) Reset()

func (*CounterSpec) String

func (x *CounterSpec) String() string

type CounterSpec_Unit

type CounterSpec_Unit int32

Corresponds to 'type' constructor parameter for Counter / DirectCounter in PSA

const (
	CounterSpec_UNSPECIFIED CounterSpec_Unit = 0
	CounterSpec_BYTES       CounterSpec_Unit = 1
	CounterSpec_PACKETS     CounterSpec_Unit = 2
	CounterSpec_BOTH        CounterSpec_Unit = 3
)

func (CounterSpec_Unit) Descriptor

func (CounterSpec_Unit) Enum

func (CounterSpec_Unit) EnumDescriptor deprecated

func (CounterSpec_Unit) EnumDescriptor() ([]byte, []int)

Deprecated: Use CounterSpec_Unit.Descriptor instead.

func (CounterSpec_Unit) Number

func (CounterSpec_Unit) String

func (x CounterSpec_Unit) String() string

func (CounterSpec_Unit) Type

type Digest

type Digest struct {
	Preamble *Preamble       `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	TypeSpec *P4DataTypeSpec `protobuf:"bytes,2,opt,name=type_spec,json=typeSpec,proto3" json:"type_spec,omitempty"`
	// contains filtered or unexported fields
}

func (*Digest) Descriptor deprecated

func (*Digest) Descriptor() ([]byte, []int)

Deprecated: Use Digest.ProtoReflect.Descriptor instead.

func (*Digest) GetPreamble

func (x *Digest) GetPreamble() *Preamble

func (*Digest) GetTypeSpec

func (x *Digest) GetTypeSpec() *P4DataTypeSpec

func (*Digest) ProtoMessage

func (*Digest) ProtoMessage()

func (*Digest) ProtoReflect

func (x *Digest) ProtoReflect() protoreflect.Message

func (*Digest) Reset

func (x *Digest) Reset()

func (*Digest) String

func (x *Digest) String() string

type DirectCounter

type DirectCounter struct {
	Preamble *Preamble    `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	Spec     *CounterSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"`
	// the id of the table to which the counter is attached
	DirectTableId uint32 `protobuf:"varint,3,opt,name=direct_table_id,json=directTableId,proto3" json:"direct_table_id,omitempty"`
	// contains filtered or unexported fields
}

func (*DirectCounter) Descriptor deprecated

func (*DirectCounter) Descriptor() ([]byte, []int)

Deprecated: Use DirectCounter.ProtoReflect.Descriptor instead.

func (*DirectCounter) GetDirectTableId

func (x *DirectCounter) GetDirectTableId() uint32

func (*DirectCounter) GetPreamble

func (x *DirectCounter) GetPreamble() *Preamble

func (*DirectCounter) GetSpec

func (x *DirectCounter) GetSpec() *CounterSpec

func (*DirectCounter) ProtoMessage

func (*DirectCounter) ProtoMessage()

func (*DirectCounter) ProtoReflect

func (x *DirectCounter) ProtoReflect() protoreflect.Message

func (*DirectCounter) Reset

func (x *DirectCounter) Reset()

func (*DirectCounter) String

func (x *DirectCounter) String() string

type DirectMeter

type DirectMeter struct {
	Preamble *Preamble  `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	Spec     *MeterSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"`
	// the id of the table to which the meter is attached
	DirectTableId uint32 `protobuf:"varint,3,opt,name=direct_table_id,json=directTableId,proto3" json:"direct_table_id,omitempty"`
	// contains filtered or unexported fields
}

func (*DirectMeter) Descriptor deprecated

func (*DirectMeter) Descriptor() ([]byte, []int)

Deprecated: Use DirectMeter.ProtoReflect.Descriptor instead.

func (*DirectMeter) GetDirectTableId

func (x *DirectMeter) GetDirectTableId() uint32

func (*DirectMeter) GetPreamble

func (x *DirectMeter) GetPreamble() *Preamble

func (*DirectMeter) GetSpec

func (x *DirectMeter) GetSpec() *MeterSpec

func (*DirectMeter) ProtoMessage

func (*DirectMeter) ProtoMessage()

func (*DirectMeter) ProtoReflect

func (x *DirectMeter) ProtoReflect() protoreflect.Message

func (*DirectMeter) Reset

func (x *DirectMeter) Reset()

func (*DirectMeter) String

func (x *DirectMeter) String() string

type Documentation

type Documentation struct {

	// A brief description of something, e.g. one sentence
	Brief string `protobuf:"bytes,1,opt,name=brief,proto3" json:"brief,omitempty"`
	// A more verbose description of something. Multiline is accepted. Markup
	// format (if any) is TBD.
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	// contains filtered or unexported fields
}

func (*Documentation) Descriptor deprecated

func (*Documentation) Descriptor() ([]byte, []int)

Deprecated: Use Documentation.ProtoReflect.Descriptor instead.

func (*Documentation) GetBrief

func (x *Documentation) GetBrief() string

func (*Documentation) GetDescription

func (x *Documentation) GetDescription() string

func (*Documentation) ProtoMessage

func (*Documentation) ProtoMessage()

func (*Documentation) ProtoReflect

func (x *Documentation) ProtoReflect() protoreflect.Message

func (*Documentation) Reset

func (x *Documentation) Reset()

func (*Documentation) String

func (x *Documentation) String() string

type Expression

type Expression struct {

	// Types that are assignable to Value:
	//	*Expression_StringValue
	//	*Expression_Int64Value
	//	*Expression_BoolValue
	Value isExpression_Value `protobuf_oneof:"value"`
	// contains filtered or unexported fields
}

func (*Expression) Descriptor deprecated

func (*Expression) Descriptor() ([]byte, []int)

Deprecated: Use Expression.ProtoReflect.Descriptor instead.

func (*Expression) GetBoolValue

func (x *Expression) GetBoolValue() bool

func (*Expression) GetInt64Value

func (x *Expression) GetInt64Value() int64

func (*Expression) GetStringValue

func (x *Expression) GetStringValue() string

func (*Expression) GetValue

func (m *Expression) GetValue() isExpression_Value

func (*Expression) ProtoMessage

func (*Expression) ProtoMessage()

func (*Expression) ProtoReflect

func (x *Expression) ProtoReflect() protoreflect.Message

func (*Expression) Reset

func (x *Expression) Reset()

func (*Expression) String

func (x *Expression) String() string

type ExpressionList

type ExpressionList struct {
	Expressions []*Expression `protobuf:"bytes,1,rep,name=expressions,proto3" json:"expressions,omitempty"`
	// contains filtered or unexported fields
}

func (*ExpressionList) Descriptor deprecated

func (*ExpressionList) Descriptor() ([]byte, []int)

Deprecated: Use ExpressionList.ProtoReflect.Descriptor instead.

func (*ExpressionList) GetExpressions

func (x *ExpressionList) GetExpressions() []*Expression

func (*ExpressionList) ProtoMessage

func (*ExpressionList) ProtoMessage()

func (*ExpressionList) ProtoReflect

func (x *ExpressionList) ProtoReflect() protoreflect.Message

func (*ExpressionList) Reset

func (x *ExpressionList) Reset()

func (*ExpressionList) String

func (x *ExpressionList) String() string

type Expression_BoolValue

type Expression_BoolValue struct {
	BoolValue bool `protobuf:"varint,3,opt,name=bool_value,json=boolValue,proto3,oneof"`
}

type Expression_Int64Value

type Expression_Int64Value struct {
	Int64Value int64 `protobuf:"varint,2,opt,name=int64_value,json=int64Value,proto3,oneof"`
}

type Expression_StringValue

type Expression_StringValue struct {
	StringValue string `protobuf:"bytes,1,opt,name=string_value,json=stringValue,proto3,oneof"`
}

type Extern

type Extern struct {

	// the extern_type_id is unique for a given architecture and must be in the
	// range [0x81, 0xfe].
	ExternTypeId   uint32            `protobuf:"varint,1,opt,name=extern_type_id,json=externTypeId,proto3" json:"extern_type_id,omitempty"`
	ExternTypeName string            `protobuf:"bytes,2,opt,name=extern_type_name,json=externTypeName,proto3" json:"extern_type_name,omitempty"`
	Instances      []*ExternInstance `protobuf:"bytes,3,rep,name=instances,proto3" json:"instances,omitempty"`
	// contains filtered or unexported fields
}

used to group all extern instances of the same type in one message

func (*Extern) Descriptor deprecated

func (*Extern) Descriptor() ([]byte, []int)

Deprecated: Use Extern.ProtoReflect.Descriptor instead.

func (*Extern) GetExternTypeId

func (x *Extern) GetExternTypeId() uint32

func (*Extern) GetExternTypeName

func (x *Extern) GetExternTypeName() string

func (*Extern) GetInstances

func (x *Extern) GetInstances() []*ExternInstance

func (*Extern) ProtoMessage

func (*Extern) ProtoMessage()

func (*Extern) ProtoReflect

func (x *Extern) ProtoReflect() protoreflect.Message

func (*Extern) Reset

func (x *Extern) Reset()

func (*Extern) String

func (x *Extern) String() string

type ExternInstance

type ExternInstance struct {
	Preamble *Preamble `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	// specific to the extern type, declared in a separate vendor-specific proto
	// file
	Info *any1.Any `protobuf:"bytes,2,opt,name=info,proto3" json:"info,omitempty"`
	// contains filtered or unexported fields
}

func (*ExternInstance) Descriptor deprecated

func (*ExternInstance) Descriptor() ([]byte, []int)

Deprecated: Use ExternInstance.ProtoReflect.Descriptor instead.

func (*ExternInstance) GetInfo

func (x *ExternInstance) GetInfo() *any1.Any

func (*ExternInstance) GetPreamble

func (x *ExternInstance) GetPreamble() *Preamble

func (*ExternInstance) ProtoMessage

func (*ExternInstance) ProtoMessage()

func (*ExternInstance) ProtoReflect

func (x *ExternInstance) ProtoReflect() protoreflect.Message

func (*ExternInstance) Reset

func (x *ExternInstance) Reset()

func (*ExternInstance) String

func (x *ExternInstance) String() string

type FieldMatch

type FieldMatch struct {
	FieldId uint32 `protobuf:"varint,1,opt,name=field_id,json=fieldId,proto3" json:"field_id,omitempty"`
	// Types that are assignable to FieldMatchType:
	//	*FieldMatch_Exact_
	//	*FieldMatch_Ternary_
	//	*FieldMatch_Lpm
	//	*FieldMatch_Range_
	//	*FieldMatch_Optional_
	//	*FieldMatch_Other
	FieldMatchType isFieldMatch_FieldMatchType `protobuf_oneof:"field_match_type"`
	// contains filtered or unexported fields
}

func (*FieldMatch) Descriptor deprecated

func (*FieldMatch) Descriptor() ([]byte, []int)

Deprecated: Use FieldMatch.ProtoReflect.Descriptor instead.

func (*FieldMatch) GetExact

func (x *FieldMatch) GetExact() *FieldMatch_Exact

func (*FieldMatch) GetFieldId

func (x *FieldMatch) GetFieldId() uint32

func (*FieldMatch) GetFieldMatchType

func (m *FieldMatch) GetFieldMatchType() isFieldMatch_FieldMatchType

func (*FieldMatch) GetLpm

func (x *FieldMatch) GetLpm() *FieldMatch_LPM

func (*FieldMatch) GetOptional

func (x *FieldMatch) GetOptional() *FieldMatch_Optional

func (*FieldMatch) GetOther

func (x *FieldMatch) GetOther() *any1.Any

func (*FieldMatch) GetRange

func (x *FieldMatch) GetRange() *FieldMatch_Range

func (*FieldMatch) GetTernary

func (x *FieldMatch) GetTernary() *FieldMatch_Ternary

func (*FieldMatch) ProtoMessage

func (*FieldMatch) ProtoMessage()

func (*FieldMatch) ProtoReflect

func (x *FieldMatch) ProtoReflect() protoreflect.Message

func (*FieldMatch) Reset

func (x *FieldMatch) Reset()

func (*FieldMatch) String

func (x *FieldMatch) String() string

type FieldMatch_Exact

type FieldMatch_Exact struct {
	Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

Matches can be performed on arbitrarily-large inputs; the protobuf type 'bytes' is used to model arbitrarily-large values.

func (*FieldMatch_Exact) Descriptor deprecated

func (*FieldMatch_Exact) Descriptor() ([]byte, []int)

Deprecated: Use FieldMatch_Exact.ProtoReflect.Descriptor instead.

func (*FieldMatch_Exact) GetValue

func (x *FieldMatch_Exact) GetValue() []byte

func (*FieldMatch_Exact) ProtoMessage

func (*FieldMatch_Exact) ProtoMessage()

func (*FieldMatch_Exact) ProtoReflect

func (x *FieldMatch_Exact) ProtoReflect() protoreflect.Message

func (*FieldMatch_Exact) Reset

func (x *FieldMatch_Exact) Reset()

func (*FieldMatch_Exact) String

func (x *FieldMatch_Exact) String() string

type FieldMatch_Exact_

type FieldMatch_Exact_ struct {
	Exact *FieldMatch_Exact `protobuf:"bytes,2,opt,name=exact,proto3,oneof"`
}

type FieldMatch_LPM

type FieldMatch_LPM struct {
	Value     []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	PrefixLen int32  `protobuf:"varint,2,opt,name=prefix_len,json=prefixLen,proto3" json:"prefix_len,omitempty"` // in bits
	// contains filtered or unexported fields
}

func (*FieldMatch_LPM) Descriptor deprecated

func (*FieldMatch_LPM) Descriptor() ([]byte, []int)

Deprecated: Use FieldMatch_LPM.ProtoReflect.Descriptor instead.

func (*FieldMatch_LPM) GetPrefixLen

func (x *FieldMatch_LPM) GetPrefixLen() int32

func (*FieldMatch_LPM) GetValue

func (x *FieldMatch_LPM) GetValue() []byte

func (*FieldMatch_LPM) ProtoMessage

func (*FieldMatch_LPM) ProtoMessage()

func (*FieldMatch_LPM) ProtoReflect

func (x *FieldMatch_LPM) ProtoReflect() protoreflect.Message

func (*FieldMatch_LPM) Reset

func (x *FieldMatch_LPM) Reset()

func (*FieldMatch_LPM) String

func (x *FieldMatch_LPM) String() string

type FieldMatch_Lpm

type FieldMatch_Lpm struct {
	Lpm *FieldMatch_LPM `protobuf:"bytes,4,opt,name=lpm,proto3,oneof"`
}

type FieldMatch_Optional

type FieldMatch_Optional struct {
	Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

If the Optional match should be a wildcard, the FieldMatch must be omitted. Otherwise, this behaves like an exact match.

func (*FieldMatch_Optional) Descriptor deprecated

func (*FieldMatch_Optional) Descriptor() ([]byte, []int)

Deprecated: Use FieldMatch_Optional.ProtoReflect.Descriptor instead.

func (*FieldMatch_Optional) GetValue

func (x *FieldMatch_Optional) GetValue() []byte

func (*FieldMatch_Optional) ProtoMessage

func (*FieldMatch_Optional) ProtoMessage()

func (*FieldMatch_Optional) ProtoReflect

func (x *FieldMatch_Optional) ProtoReflect() protoreflect.Message

func (*FieldMatch_Optional) Reset

func (x *FieldMatch_Optional) Reset()

func (*FieldMatch_Optional) String

func (x *FieldMatch_Optional) String() string

type FieldMatch_Optional_

type FieldMatch_Optional_ struct {
	Optional *FieldMatch_Optional `protobuf:"bytes,7,opt,name=optional,proto3,oneof"`
}

type FieldMatch_Other

type FieldMatch_Other struct {
	// Architecture-specific match value; it corresponds to the other_match_type
	// in the P4Info MatchField message.
	Other *any1.Any `protobuf:"bytes,100,opt,name=other,proto3,oneof"`
}

type FieldMatch_Range

type FieldMatch_Range struct {
	Low  []byte `protobuf:"bytes,1,opt,name=low,proto3" json:"low,omitempty"`
	High []byte `protobuf:"bytes,2,opt,name=high,proto3" json:"high,omitempty"`
	// contains filtered or unexported fields
}

A Range is logically a set that contains all values numerically between 'low' and 'high' inclusively.

func (*FieldMatch_Range) Descriptor deprecated

func (*FieldMatch_Range) Descriptor() ([]byte, []int)

Deprecated: Use FieldMatch_Range.ProtoReflect.Descriptor instead.

func (*FieldMatch_Range) GetHigh

func (x *FieldMatch_Range) GetHigh() []byte

func (*FieldMatch_Range) GetLow

func (x *FieldMatch_Range) GetLow() []byte

func (*FieldMatch_Range) ProtoMessage

func (*FieldMatch_Range) ProtoMessage()

func (*FieldMatch_Range) ProtoReflect

func (x *FieldMatch_Range) ProtoReflect() protoreflect.Message

func (*FieldMatch_Range) Reset

func (x *FieldMatch_Range) Reset()

func (*FieldMatch_Range) String

func (x *FieldMatch_Range) String() string

type FieldMatch_Range_

type FieldMatch_Range_ struct {
	Range *FieldMatch_Range `protobuf:"bytes,6,opt,name=range,proto3,oneof"`
}

type FieldMatch_Ternary

type FieldMatch_Ternary struct {
	Value []byte `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
	Mask  []byte `protobuf:"bytes,2,opt,name=mask,proto3" json:"mask,omitempty"`
	// contains filtered or unexported fields
}

func (*FieldMatch_Ternary) Descriptor deprecated

func (*FieldMatch_Ternary) Descriptor() ([]byte, []int)

Deprecated: Use FieldMatch_Ternary.ProtoReflect.Descriptor instead.

func (*FieldMatch_Ternary) GetMask

func (x *FieldMatch_Ternary) GetMask() []byte

func (*FieldMatch_Ternary) GetValue

func (x *FieldMatch_Ternary) GetValue() []byte

func (*FieldMatch_Ternary) ProtoMessage

func (*FieldMatch_Ternary) ProtoMessage()

func (*FieldMatch_Ternary) ProtoReflect

func (x *FieldMatch_Ternary) ProtoReflect() protoreflect.Message

func (*FieldMatch_Ternary) Reset

func (x *FieldMatch_Ternary) Reset()

func (*FieldMatch_Ternary) String

func (x *FieldMatch_Ternary) String() string

type FieldMatch_Ternary_

type FieldMatch_Ternary_ struct {
	Ternary *FieldMatch_Ternary `protobuf:"bytes,3,opt,name=ternary,proto3,oneof"`
}

type KeyValuePair

type KeyValuePair struct {
	Key   string      `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value *Expression `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*KeyValuePair) Descriptor deprecated

func (*KeyValuePair) Descriptor() ([]byte, []int)

Deprecated: Use KeyValuePair.ProtoReflect.Descriptor instead.

func (*KeyValuePair) GetKey

func (x *KeyValuePair) GetKey() string

func (*KeyValuePair) GetValue

func (x *KeyValuePair) GetValue() *Expression

func (*KeyValuePair) ProtoMessage

func (*KeyValuePair) ProtoMessage()

func (*KeyValuePair) ProtoReflect

func (x *KeyValuePair) ProtoReflect() protoreflect.Message

func (*KeyValuePair) Reset

func (x *KeyValuePair) Reset()

func (*KeyValuePair) String

func (x *KeyValuePair) String() string

type KeyValuePairList

type KeyValuePairList struct {
	KvPairs []*KeyValuePair `protobuf:"bytes,1,rep,name=kv_pairs,json=kvPairs,proto3" json:"kv_pairs,omitempty"`
	// contains filtered or unexported fields
}

func (*KeyValuePairList) Descriptor deprecated

func (*KeyValuePairList) Descriptor() ([]byte, []int)

Deprecated: Use KeyValuePairList.ProtoReflect.Descriptor instead.

func (*KeyValuePairList) GetKvPairs

func (x *KeyValuePairList) GetKvPairs() []*KeyValuePair

func (*KeyValuePairList) ProtoMessage

func (*KeyValuePairList) ProtoMessage()

func (*KeyValuePairList) ProtoReflect

func (x *KeyValuePairList) ProtoReflect() protoreflect.Message

func (*KeyValuePairList) Reset

func (x *KeyValuePairList) Reset()

func (*KeyValuePairList) String

func (x *KeyValuePairList) String() string

type MatchField

type MatchField struct {
	Id          uint32   `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name        string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Annotations []string `protobuf:"bytes,3,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations []*SourceLocation `protobuf:"bytes,10,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	Bitwidth            int32             `protobuf:"varint,4,opt,name=bitwidth,proto3" json:"bitwidth,omitempty"`
	// Types that are assignable to Match:
	//	*MatchField_MatchType_
	//	*MatchField_OtherMatchType
	Match isMatchField_Match `protobuf_oneof:"match"`
	// Documentation of the match field
	Doc *Documentation `protobuf:"bytes,6,opt,name=doc,proto3" json:"doc,omitempty"`
	// unset if not user-defined type
	TypeName              *P4NamedType            `protobuf:"bytes,8,opt,name=type_name,json=typeName,proto3" json:"type_name,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,9,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*MatchField) Descriptor deprecated

func (*MatchField) Descriptor() ([]byte, []int)

Deprecated: Use MatchField.ProtoReflect.Descriptor instead.

func (*MatchField) GetAnnotationLocations

func (x *MatchField) GetAnnotationLocations() []*SourceLocation

func (*MatchField) GetAnnotations

func (x *MatchField) GetAnnotations() []string

func (*MatchField) GetBitwidth

func (x *MatchField) GetBitwidth() int32

func (*MatchField) GetDoc

func (x *MatchField) GetDoc() *Documentation

func (*MatchField) GetId

func (x *MatchField) GetId() uint32

func (*MatchField) GetMatch

func (m *MatchField) GetMatch() isMatchField_Match

func (*MatchField) GetMatchType

func (x *MatchField) GetMatchType() MatchField_MatchType

func (*MatchField) GetName

func (x *MatchField) GetName() string

func (*MatchField) GetOtherMatchType

func (x *MatchField) GetOtherMatchType() string

func (*MatchField) GetStructuredAnnotations

func (x *MatchField) GetStructuredAnnotations() []*StructuredAnnotation

func (*MatchField) GetTypeName

func (x *MatchField) GetTypeName() *P4NamedType

func (*MatchField) ProtoMessage

func (*MatchField) ProtoMessage()

func (*MatchField) ProtoReflect

func (x *MatchField) ProtoReflect() protoreflect.Message

func (*MatchField) Reset

func (x *MatchField) Reset()

func (*MatchField) String

func (x *MatchField) String() string

type MatchField_MatchType

type MatchField_MatchType int32
const (
	MatchField_UNSPECIFIED MatchField_MatchType = 0
	MatchField_EXACT       MatchField_MatchType = 2
	MatchField_LPM         MatchField_MatchType = 3
	MatchField_TERNARY     MatchField_MatchType = 4
	MatchField_RANGE       MatchField_MatchType = 5
	MatchField_OPTIONAL    MatchField_MatchType = 6
)

func (MatchField_MatchType) Descriptor

func (MatchField_MatchType) Enum

func (MatchField_MatchType) EnumDescriptor deprecated

func (MatchField_MatchType) EnumDescriptor() ([]byte, []int)

Deprecated: Use MatchField_MatchType.Descriptor instead.

func (MatchField_MatchType) Number

func (MatchField_MatchType) String

func (x MatchField_MatchType) String() string

func (MatchField_MatchType) Type

type MatchField_MatchType_

type MatchField_MatchType_ struct {
	MatchType MatchField_MatchType `protobuf:"varint,5,opt,name=match_type,json=matchType,proto3,enum=p4.config.v1.MatchField_MatchType,oneof"`
}

type MatchField_OtherMatchType

type MatchField_OtherMatchType struct {
	// used for architecture-specific match types which are not part of the core
	// P4 language or of the PSA architecture.
	OtherMatchType string `protobuf:"bytes,7,opt,name=other_match_type,json=otherMatchType,proto3,oneof"`
}

type MatchValueLookupTable

type MatchValueLookupTable struct {
	Preamble    *Preamble                      `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	MatchFields []*MatchField                  `protobuf:"bytes,2,rep,name=match_fields,json=matchFields,proto3" json:"match_fields,omitempty"`
	Params      []*MatchValueLookupTable_Param `protobuf:"bytes,3,rep,name=params,proto3" json:"params,omitempty"`
	Size        uint32                         `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// contains filtered or unexported fields
}

func (*MatchValueLookupTable) Descriptor deprecated

func (*MatchValueLookupTable) Descriptor() ([]byte, []int)

Deprecated: Use MatchValueLookupTable.ProtoReflect.Descriptor instead.

func (*MatchValueLookupTable) GetMatchFields

func (x *MatchValueLookupTable) GetMatchFields() []*MatchField

func (*MatchValueLookupTable) GetParams

func (*MatchValueLookupTable) GetPreamble

func (x *MatchValueLookupTable) GetPreamble() *Preamble

func (*MatchValueLookupTable) GetSize

func (x *MatchValueLookupTable) GetSize() uint32

func (*MatchValueLookupTable) ProtoMessage

func (*MatchValueLookupTable) ProtoMessage()

func (*MatchValueLookupTable) ProtoReflect

func (x *MatchValueLookupTable) ProtoReflect() protoreflect.Message

func (*MatchValueLookupTable) Reset

func (x *MatchValueLookupTable) Reset()

func (*MatchValueLookupTable) String

func (x *MatchValueLookupTable) String() string

type MatchValueLookupTable_Param

type MatchValueLookupTable_Param struct {
	Id       uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name     string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Bitwidth uint32 `protobuf:"varint,3,opt,name=bitwidth,proto3" json:"bitwidth,omitempty"`
	// contains filtered or unexported fields
}

func (*MatchValueLookupTable_Param) Descriptor deprecated

func (*MatchValueLookupTable_Param) Descriptor() ([]byte, []int)

Deprecated: Use MatchValueLookupTable_Param.ProtoReflect.Descriptor instead.

func (*MatchValueLookupTable_Param) GetBitwidth

func (x *MatchValueLookupTable_Param) GetBitwidth() uint32

func (*MatchValueLookupTable_Param) GetId

func (*MatchValueLookupTable_Param) GetName

func (x *MatchValueLookupTable_Param) GetName() string

func (*MatchValueLookupTable_Param) ProtoMessage

func (*MatchValueLookupTable_Param) ProtoMessage()

func (*MatchValueLookupTable_Param) ProtoReflect

func (*MatchValueLookupTable_Param) Reset

func (x *MatchValueLookupTable_Param) Reset()

func (*MatchValueLookupTable_Param) String

func (x *MatchValueLookupTable_Param) String() string

type Meter

type Meter struct {
	Preamble *Preamble  `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	Spec     *MeterSpec `protobuf:"bytes,2,opt,name=spec,proto3" json:"spec,omitempty"`
	// number of entries in the meter array
	Size int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
	// unset if index is not user-defined type
	IndexTypeName *P4NamedType `protobuf:"bytes,4,opt,name=index_type_name,json=indexTypeName,proto3" json:"index_type_name,omitempty"`
	// contains filtered or unexported fields
}

func (*Meter) Descriptor deprecated

func (*Meter) Descriptor() ([]byte, []int)

Deprecated: Use Meter.ProtoReflect.Descriptor instead.

func (*Meter) GetIndexTypeName

func (x *Meter) GetIndexTypeName() *P4NamedType

func (*Meter) GetPreamble

func (x *Meter) GetPreamble() *Preamble

func (*Meter) GetSize

func (x *Meter) GetSize() int64

func (*Meter) GetSpec

func (x *Meter) GetSpec() *MeterSpec

func (*Meter) ProtoMessage

func (*Meter) ProtoMessage()

func (*Meter) ProtoReflect

func (x *Meter) ProtoReflect() protoreflect.Message

func (*Meter) Reset

func (x *Meter) Reset()

func (*Meter) String

func (x *Meter) String() string

type MeterSpec

type MeterSpec struct {
	Unit MeterSpec_Unit `protobuf:"varint,1,opt,name=unit,proto3,enum=p4.config.v1.MeterSpec_Unit" json:"unit,omitempty"`
	// contains filtered or unexported fields
}

func (*MeterSpec) Descriptor deprecated

func (*MeterSpec) Descriptor() ([]byte, []int)

Deprecated: Use MeterSpec.ProtoReflect.Descriptor instead.

func (*MeterSpec) GetUnit

func (x *MeterSpec) GetUnit() MeterSpec_Unit

func (*MeterSpec) ProtoMessage

func (*MeterSpec) ProtoMessage()

func (*MeterSpec) ProtoReflect

func (x *MeterSpec) ProtoReflect() protoreflect.Message

func (*MeterSpec) Reset

func (x *MeterSpec) Reset()

func (*MeterSpec) String

func (x *MeterSpec) String() string

type MeterSpec_Unit

type MeterSpec_Unit int32

Corresponds to 'type' constructor parameter for Meter / DirectMeter in PSA

const (
	MeterSpec_UNSPECIFIED MeterSpec_Unit = 0
	MeterSpec_BYTES       MeterSpec_Unit = 1
	MeterSpec_PACKETS     MeterSpec_Unit = 2
)

func (MeterSpec_Unit) Descriptor

func (MeterSpec_Unit) Enum

func (x MeterSpec_Unit) Enum() *MeterSpec_Unit

func (MeterSpec_Unit) EnumDescriptor deprecated

func (MeterSpec_Unit) EnumDescriptor() ([]byte, []int)

Deprecated: Use MeterSpec_Unit.Descriptor instead.

func (MeterSpec_Unit) Number

func (MeterSpec_Unit) String

func (x MeterSpec_Unit) String() string

func (MeterSpec_Unit) Type

type MvlutEntry

type MvlutEntry struct {
	MvlutId uint32        `protobuf:"varint,1,opt,name=mvlut_id,json=mvlutId,proto3" json:"mvlut_id,omitempty"`
	Match   []*FieldMatch `protobuf:"bytes,2,rep,name=match,proto3" json:"match,omitempty"`
	Param   *MvlutParam   `protobuf:"bytes,3,opt,name=param,proto3" json:"param,omitempty"`
	// contains filtered or unexported fields
}

func (*MvlutEntry) Descriptor deprecated

func (*MvlutEntry) Descriptor() ([]byte, []int)

Deprecated: Use MvlutEntry.ProtoReflect.Descriptor instead.

func (*MvlutEntry) GetMatch

func (x *MvlutEntry) GetMatch() []*FieldMatch

func (*MvlutEntry) GetMvlutId

func (x *MvlutEntry) GetMvlutId() uint32

func (*MvlutEntry) GetParam

func (x *MvlutEntry) GetParam() *MvlutParam

func (*MvlutEntry) ProtoMessage

func (*MvlutEntry) ProtoMessage()

func (*MvlutEntry) ProtoReflect

func (x *MvlutEntry) ProtoReflect() protoreflect.Message

func (*MvlutEntry) Reset

func (x *MvlutEntry) Reset()

func (*MvlutEntry) String

func (x *MvlutEntry) String() string

type MvlutParam

type MvlutParam struct {
	Params []*MvlutParam_Param `protobuf:"bytes,1,rep,name=params,proto3" json:"params,omitempty"`
	// contains filtered or unexported fields
}

func (*MvlutParam) Descriptor deprecated

func (*MvlutParam) Descriptor() ([]byte, []int)

Deprecated: Use MvlutParam.ProtoReflect.Descriptor instead.

func (*MvlutParam) GetParams

func (x *MvlutParam) GetParams() []*MvlutParam_Param

func (*MvlutParam) ProtoMessage

func (*MvlutParam) ProtoMessage()

func (*MvlutParam) ProtoReflect

func (x *MvlutParam) ProtoReflect() protoreflect.Message

func (*MvlutParam) Reset

func (x *MvlutParam) Reset()

func (*MvlutParam) String

func (x *MvlutParam) String() string

type MvlutParam_Param

type MvlutParam_Param struct {
	ParamId uint32 `protobuf:"varint,1,opt,name=param_id,json=paramId,proto3" json:"param_id,omitempty"`
	Value   []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

func (*MvlutParam_Param) Descriptor deprecated

func (*MvlutParam_Param) Descriptor() ([]byte, []int)

Deprecated: Use MvlutParam_Param.ProtoReflect.Descriptor instead.

func (*MvlutParam_Param) GetParamId

func (x *MvlutParam_Param) GetParamId() uint32

func (*MvlutParam_Param) GetValue

func (x *MvlutParam_Param) GetValue() []byte

func (*MvlutParam_Param) ProtoMessage

func (*MvlutParam_Param) ProtoMessage()

func (*MvlutParam_Param) ProtoReflect

func (x *MvlutParam_Param) ProtoReflect() protoreflect.Message

func (*MvlutParam_Param) Reset

func (x *MvlutParam_Param) Reset()

func (*MvlutParam_Param) String

func (x *MvlutParam_Param) String() string

type P4BitTypeSpec

type P4BitTypeSpec struct {
	Bitwidth int32 `protobuf:"varint,1,opt,name=bitwidth,proto3" json:"bitwidth,omitempty"`
	// contains filtered or unexported fields
}

func (*P4BitTypeSpec) Descriptor deprecated

func (*P4BitTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4BitTypeSpec.ProtoReflect.Descriptor instead.

func (*P4BitTypeSpec) GetBitwidth

func (x *P4BitTypeSpec) GetBitwidth() int32

func (*P4BitTypeSpec) ProtoMessage

func (*P4BitTypeSpec) ProtoMessage()

func (*P4BitTypeSpec) ProtoReflect

func (x *P4BitTypeSpec) ProtoReflect() protoreflect.Message

func (*P4BitTypeSpec) Reset

func (x *P4BitTypeSpec) Reset()

func (*P4BitTypeSpec) String

func (x *P4BitTypeSpec) String() string

type P4BitstringLikeTypeSpec

type P4BitstringLikeTypeSpec struct {

	// Types that are assignable to TypeSpec:
	//	*P4BitstringLikeTypeSpec_Bit
	//	*P4BitstringLikeTypeSpec_Int
	//	*P4BitstringLikeTypeSpec_Varbit
	TypeSpec isP4BitstringLikeTypeSpec_TypeSpec `protobuf_oneof:"type_spec"`
	// Useful to identify well-known types, such as IP address or Ethernet MAC
	// address.
	Annotations []string `protobuf:"bytes,4,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,5,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,6,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*P4BitstringLikeTypeSpec) Descriptor deprecated

func (*P4BitstringLikeTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4BitstringLikeTypeSpec.ProtoReflect.Descriptor instead.

func (*P4BitstringLikeTypeSpec) GetAnnotationLocations

func (x *P4BitstringLikeTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4BitstringLikeTypeSpec) GetAnnotations

func (x *P4BitstringLikeTypeSpec) GetAnnotations() []string

func (*P4BitstringLikeTypeSpec) GetBit

func (*P4BitstringLikeTypeSpec) GetInt

func (*P4BitstringLikeTypeSpec) GetStructuredAnnotations

func (x *P4BitstringLikeTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4BitstringLikeTypeSpec) GetTypeSpec

func (m *P4BitstringLikeTypeSpec) GetTypeSpec() isP4BitstringLikeTypeSpec_TypeSpec

func (*P4BitstringLikeTypeSpec) GetVarbit

func (x *P4BitstringLikeTypeSpec) GetVarbit() *P4VarbitTypeSpec

func (*P4BitstringLikeTypeSpec) ProtoMessage

func (*P4BitstringLikeTypeSpec) ProtoMessage()

func (*P4BitstringLikeTypeSpec) ProtoReflect

func (x *P4BitstringLikeTypeSpec) ProtoReflect() protoreflect.Message

func (*P4BitstringLikeTypeSpec) Reset

func (x *P4BitstringLikeTypeSpec) Reset()

func (*P4BitstringLikeTypeSpec) String

func (x *P4BitstringLikeTypeSpec) String() string

type P4BitstringLikeTypeSpec_Bit

type P4BitstringLikeTypeSpec_Bit struct {
	Bit *P4BitTypeSpec `protobuf:"bytes,1,opt,name=bit,proto3,oneof"` // bit<W>
}

type P4BitstringLikeTypeSpec_Int

type P4BitstringLikeTypeSpec_Int struct {
	Int *P4IntTypeSpec `protobuf:"bytes,2,opt,name=int,proto3,oneof"` // int<W>
}

type P4BitstringLikeTypeSpec_Varbit

type P4BitstringLikeTypeSpec_Varbit struct {
	Varbit *P4VarbitTypeSpec `protobuf:"bytes,3,opt,name=varbit,proto3,oneof"` // varbit<W>
}

type P4BoolType

type P4BoolType struct {
	// contains filtered or unexported fields
}

Empty message as no type information needed, just used as a placeholder in the oneof to identify boolean types.

func (*P4BoolType) Descriptor deprecated

func (*P4BoolType) Descriptor() ([]byte, []int)

Deprecated: Use P4BoolType.ProtoReflect.Descriptor instead.

func (*P4BoolType) ProtoMessage

func (*P4BoolType) ProtoMessage()

func (*P4BoolType) ProtoReflect

func (x *P4BoolType) ProtoReflect() protoreflect.Message

func (*P4BoolType) Reset

func (x *P4BoolType) Reset()

func (*P4BoolType) String

func (x *P4BoolType) String() string

type P4DataTypeSpec

type P4DataTypeSpec struct {

	// Types that are assignable to TypeSpec:
	//	*P4DataTypeSpec_Bitstring
	//	*P4DataTypeSpec_Bool
	//	*P4DataTypeSpec_Tuple
	//	*P4DataTypeSpec_Struct
	//	*P4DataTypeSpec_Header
	//	*P4DataTypeSpec_HeaderUnion
	//	*P4DataTypeSpec_HeaderStack
	//	*P4DataTypeSpec_HeaderUnionStack
	//	*P4DataTypeSpec_Enum
	//	*P4DataTypeSpec_Error
	//	*P4DataTypeSpec_SerializableEnum
	//	*P4DataTypeSpec_NewType
	TypeSpec isP4DataTypeSpec_TypeSpec `protobuf_oneof:"type_spec"`
	// contains filtered or unexported fields
}

Describes a P4_16 type.

func (*P4DataTypeSpec) Descriptor deprecated

func (*P4DataTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4DataTypeSpec.ProtoReflect.Descriptor instead.

func (*P4DataTypeSpec) GetBitstring

func (x *P4DataTypeSpec) GetBitstring() *P4BitstringLikeTypeSpec

func (*P4DataTypeSpec) GetBool

func (x *P4DataTypeSpec) GetBool() *P4BoolType

func (*P4DataTypeSpec) GetEnum

func (x *P4DataTypeSpec) GetEnum() *P4NamedType

func (*P4DataTypeSpec) GetError

func (x *P4DataTypeSpec) GetError() *P4ErrorType

func (*P4DataTypeSpec) GetHeader

func (x *P4DataTypeSpec) GetHeader() *P4NamedType

func (*P4DataTypeSpec) GetHeaderStack

func (x *P4DataTypeSpec) GetHeaderStack() *P4HeaderStackTypeSpec

func (*P4DataTypeSpec) GetHeaderUnion

func (x *P4DataTypeSpec) GetHeaderUnion() *P4NamedType

func (*P4DataTypeSpec) GetHeaderUnionStack

func (x *P4DataTypeSpec) GetHeaderUnionStack() *P4HeaderUnionStackTypeSpec

func (*P4DataTypeSpec) GetNewType

func (x *P4DataTypeSpec) GetNewType() *P4NamedType

func (*P4DataTypeSpec) GetSerializableEnum

func (x *P4DataTypeSpec) GetSerializableEnum() *P4NamedType

func (*P4DataTypeSpec) GetStruct

func (x *P4DataTypeSpec) GetStruct() *P4NamedType

func (*P4DataTypeSpec) GetTuple

func (x *P4DataTypeSpec) GetTuple() *P4TupleTypeSpec

func (*P4DataTypeSpec) GetTypeSpec

func (m *P4DataTypeSpec) GetTypeSpec() isP4DataTypeSpec_TypeSpec

func (*P4DataTypeSpec) ProtoMessage

func (*P4DataTypeSpec) ProtoMessage()

func (*P4DataTypeSpec) ProtoReflect

func (x *P4DataTypeSpec) ProtoReflect() protoreflect.Message

func (*P4DataTypeSpec) Reset

func (x *P4DataTypeSpec) Reset()

func (*P4DataTypeSpec) String

func (x *P4DataTypeSpec) String() string

type P4DataTypeSpec_Bitstring

type P4DataTypeSpec_Bitstring struct {
	Bitstring *P4BitstringLikeTypeSpec `protobuf:"bytes,1,opt,name=bitstring,proto3,oneof"`
}

type P4DataTypeSpec_Bool

type P4DataTypeSpec_Bool struct {
	Bool *P4BoolType `protobuf:"bytes,2,opt,name=bool,proto3,oneof"`
}

type P4DataTypeSpec_Enum

type P4DataTypeSpec_Enum struct {
	Enum *P4NamedType `protobuf:"bytes,9,opt,name=enum,proto3,oneof"`
}

type P4DataTypeSpec_Error

type P4DataTypeSpec_Error struct {
	Error *P4ErrorType `protobuf:"bytes,10,opt,name=error,proto3,oneof"`
}

type P4DataTypeSpec_Header

type P4DataTypeSpec_Header struct {
	Header *P4NamedType `protobuf:"bytes,5,opt,name=header,proto3,oneof"`
}

type P4DataTypeSpec_HeaderStack

type P4DataTypeSpec_HeaderStack struct {
	HeaderStack *P4HeaderStackTypeSpec `protobuf:"bytes,7,opt,name=header_stack,json=headerStack,proto3,oneof"`
}

type P4DataTypeSpec_HeaderUnion

type P4DataTypeSpec_HeaderUnion struct {
	HeaderUnion *P4NamedType `protobuf:"bytes,6,opt,name=header_union,json=headerUnion,proto3,oneof"`
}

type P4DataTypeSpec_HeaderUnionStack

type P4DataTypeSpec_HeaderUnionStack struct {
	HeaderUnionStack *P4HeaderUnionStackTypeSpec `protobuf:"bytes,8,opt,name=header_union_stack,json=headerUnionStack,proto3,oneof"`
}

type P4DataTypeSpec_NewType

type P4DataTypeSpec_NewType struct {
	NewType *P4NamedType `protobuf:"bytes,12,opt,name=new_type,json=newType,proto3,oneof"`
}

type P4DataTypeSpec_SerializableEnum

type P4DataTypeSpec_SerializableEnum struct {
	SerializableEnum *P4NamedType `protobuf:"bytes,11,opt,name=serializable_enum,json=serializableEnum,proto3,oneof"`
}

type P4DataTypeSpec_Struct

type P4DataTypeSpec_Struct struct {
	Struct *P4NamedType `protobuf:"bytes,4,opt,name=struct,proto3,oneof"`
}

type P4DataTypeSpec_Tuple

type P4DataTypeSpec_Tuple struct {
	Tuple *P4TupleTypeSpec `protobuf:"bytes,3,opt,name=tuple,proto3,oneof"`
}

type P4EnumTypeSpec

type P4EnumTypeSpec struct {
	Members     []*P4EnumTypeSpec_Member `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	Annotations []string                 `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,4,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,3,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

For "safe" enums with no underlying representation and no member integer values.

func (*P4EnumTypeSpec) Descriptor deprecated

func (*P4EnumTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4EnumTypeSpec.ProtoReflect.Descriptor instead.

func (*P4EnumTypeSpec) GetAnnotationLocations

func (x *P4EnumTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4EnumTypeSpec) GetAnnotations

func (x *P4EnumTypeSpec) GetAnnotations() []string

func (*P4EnumTypeSpec) GetMembers

func (x *P4EnumTypeSpec) GetMembers() []*P4EnumTypeSpec_Member

func (*P4EnumTypeSpec) GetStructuredAnnotations

func (x *P4EnumTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4EnumTypeSpec) ProtoMessage

func (*P4EnumTypeSpec) ProtoMessage()

func (*P4EnumTypeSpec) ProtoReflect

func (x *P4EnumTypeSpec) ProtoReflect() protoreflect.Message

func (*P4EnumTypeSpec) Reset

func (x *P4EnumTypeSpec) Reset()

func (*P4EnumTypeSpec) String

func (x *P4EnumTypeSpec) String() string

type P4EnumTypeSpec_Member

type P4EnumTypeSpec_Member struct {
	Name        string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Annotations []string `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,4,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,3,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*P4EnumTypeSpec_Member) Descriptor deprecated

func (*P4EnumTypeSpec_Member) Descriptor() ([]byte, []int)

Deprecated: Use P4EnumTypeSpec_Member.ProtoReflect.Descriptor instead.

func (*P4EnumTypeSpec_Member) GetAnnotationLocations

func (x *P4EnumTypeSpec_Member) GetAnnotationLocations() []*SourceLocation

func (*P4EnumTypeSpec_Member) GetAnnotations

func (x *P4EnumTypeSpec_Member) GetAnnotations() []string

func (*P4EnumTypeSpec_Member) GetName

func (x *P4EnumTypeSpec_Member) GetName() string

func (*P4EnumTypeSpec_Member) GetStructuredAnnotations

func (x *P4EnumTypeSpec_Member) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4EnumTypeSpec_Member) ProtoMessage

func (*P4EnumTypeSpec_Member) ProtoMessage()

func (*P4EnumTypeSpec_Member) ProtoReflect

func (x *P4EnumTypeSpec_Member) ProtoReflect() protoreflect.Message

func (*P4EnumTypeSpec_Member) Reset

func (x *P4EnumTypeSpec_Member) Reset()

func (*P4EnumTypeSpec_Member) String

func (x *P4EnumTypeSpec_Member) String() string

type P4ErrorType

type P4ErrorType struct {
	// contains filtered or unexported fields
}

func (*P4ErrorType) Descriptor deprecated

func (*P4ErrorType) Descriptor() ([]byte, []int)

Deprecated: Use P4ErrorType.ProtoReflect.Descriptor instead.

func (*P4ErrorType) ProtoMessage

func (*P4ErrorType) ProtoMessage()

func (*P4ErrorType) ProtoReflect

func (x *P4ErrorType) ProtoReflect() protoreflect.Message

func (*P4ErrorType) Reset

func (x *P4ErrorType) Reset()

func (*P4ErrorType) String

func (x *P4ErrorType) String() string

type P4ErrorTypeSpec

type P4ErrorTypeSpec struct {
	Members []string `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	// contains filtered or unexported fields
}

Similar to an enum, but there is always one and only one instance per P4 program.

func (*P4ErrorTypeSpec) Descriptor deprecated

func (*P4ErrorTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4ErrorTypeSpec.ProtoReflect.Descriptor instead.

func (*P4ErrorTypeSpec) GetMembers

func (x *P4ErrorTypeSpec) GetMembers() []string

func (*P4ErrorTypeSpec) ProtoMessage

func (*P4ErrorTypeSpec) ProtoMessage()

func (*P4ErrorTypeSpec) ProtoReflect

func (x *P4ErrorTypeSpec) ProtoReflect() protoreflect.Message

func (*P4ErrorTypeSpec) Reset

func (x *P4ErrorTypeSpec) Reset()

func (*P4ErrorTypeSpec) String

func (x *P4ErrorTypeSpec) String() string

type P4HeaderStackTypeSpec

type P4HeaderStackTypeSpec struct {
	Header *P4NamedType `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
	Size   int32        `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
	// contains filtered or unexported fields
}

func (*P4HeaderStackTypeSpec) Descriptor deprecated

func (*P4HeaderStackTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4HeaderStackTypeSpec.ProtoReflect.Descriptor instead.

func (*P4HeaderStackTypeSpec) GetHeader

func (x *P4HeaderStackTypeSpec) GetHeader() *P4NamedType

func (*P4HeaderStackTypeSpec) GetSize

func (x *P4HeaderStackTypeSpec) GetSize() int32

func (*P4HeaderStackTypeSpec) ProtoMessage

func (*P4HeaderStackTypeSpec) ProtoMessage()

func (*P4HeaderStackTypeSpec) ProtoReflect

func (x *P4HeaderStackTypeSpec) ProtoReflect() protoreflect.Message

func (*P4HeaderStackTypeSpec) Reset

func (x *P4HeaderStackTypeSpec) Reset()

func (*P4HeaderStackTypeSpec) String

func (x *P4HeaderStackTypeSpec) String() string

type P4HeaderTypeSpec

type P4HeaderTypeSpec struct {
	Members     []*P4HeaderTypeSpec_Member `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	Annotations []string                   `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,3,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*P4HeaderTypeSpec) Descriptor deprecated

func (*P4HeaderTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4HeaderTypeSpec.ProtoReflect.Descriptor instead.

func (*P4HeaderTypeSpec) GetAnnotationLocations

func (x *P4HeaderTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4HeaderTypeSpec) GetAnnotations

func (x *P4HeaderTypeSpec) GetAnnotations() []string

func (*P4HeaderTypeSpec) GetMembers

func (x *P4HeaderTypeSpec) GetMembers() []*P4HeaderTypeSpec_Member

func (*P4HeaderTypeSpec) GetStructuredAnnotations

func (x *P4HeaderTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4HeaderTypeSpec) ProtoMessage

func (*P4HeaderTypeSpec) ProtoMessage()

func (*P4HeaderTypeSpec) ProtoReflect

func (x *P4HeaderTypeSpec) ProtoReflect() protoreflect.Message

func (*P4HeaderTypeSpec) Reset

func (x *P4HeaderTypeSpec) Reset()

func (*P4HeaderTypeSpec) String

func (x *P4HeaderTypeSpec) String() string

type P4HeaderTypeSpec_Member

type P4HeaderTypeSpec_Member struct {
	Name     string                   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	TypeSpec *P4BitstringLikeTypeSpec `protobuf:"bytes,2,opt,name=type_spec,json=typeSpec,proto3" json:"type_spec,omitempty"`
	// contains filtered or unexported fields
}

func (*P4HeaderTypeSpec_Member) Descriptor deprecated

func (*P4HeaderTypeSpec_Member) Descriptor() ([]byte, []int)

Deprecated: Use P4HeaderTypeSpec_Member.ProtoReflect.Descriptor instead.

func (*P4HeaderTypeSpec_Member) GetName

func (x *P4HeaderTypeSpec_Member) GetName() string

func (*P4HeaderTypeSpec_Member) GetTypeSpec

func (*P4HeaderTypeSpec_Member) ProtoMessage

func (*P4HeaderTypeSpec_Member) ProtoMessage()

func (*P4HeaderTypeSpec_Member) ProtoReflect

func (x *P4HeaderTypeSpec_Member) ProtoReflect() protoreflect.Message

func (*P4HeaderTypeSpec_Member) Reset

func (x *P4HeaderTypeSpec_Member) Reset()

func (*P4HeaderTypeSpec_Member) String

func (x *P4HeaderTypeSpec_Member) String() string

type P4HeaderUnionStackTypeSpec

type P4HeaderUnionStackTypeSpec struct {
	HeaderUnion *P4NamedType `protobuf:"bytes,1,opt,name=header_union,json=headerUnion,proto3" json:"header_union,omitempty"`
	Size        int32        `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
	// contains filtered or unexported fields
}

func (*P4HeaderUnionStackTypeSpec) Descriptor deprecated

func (*P4HeaderUnionStackTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4HeaderUnionStackTypeSpec.ProtoReflect.Descriptor instead.

func (*P4HeaderUnionStackTypeSpec) GetHeaderUnion

func (x *P4HeaderUnionStackTypeSpec) GetHeaderUnion() *P4NamedType

func (*P4HeaderUnionStackTypeSpec) GetSize

func (x *P4HeaderUnionStackTypeSpec) GetSize() int32

func (*P4HeaderUnionStackTypeSpec) ProtoMessage

func (*P4HeaderUnionStackTypeSpec) ProtoMessage()

func (*P4HeaderUnionStackTypeSpec) ProtoReflect

func (*P4HeaderUnionStackTypeSpec) Reset

func (x *P4HeaderUnionStackTypeSpec) Reset()

func (*P4HeaderUnionStackTypeSpec) String

func (x *P4HeaderUnionStackTypeSpec) String() string

type P4HeaderUnionTypeSpec

type P4HeaderUnionTypeSpec struct {
	Members     []*P4HeaderUnionTypeSpec_Member `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	Annotations []string                        `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,3,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*P4HeaderUnionTypeSpec) Descriptor deprecated

func (*P4HeaderUnionTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4HeaderUnionTypeSpec.ProtoReflect.Descriptor instead.

func (*P4HeaderUnionTypeSpec) GetAnnotationLocations

func (x *P4HeaderUnionTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4HeaderUnionTypeSpec) GetAnnotations

func (x *P4HeaderUnionTypeSpec) GetAnnotations() []string

func (*P4HeaderUnionTypeSpec) GetMembers

func (*P4HeaderUnionTypeSpec) GetStructuredAnnotations

func (x *P4HeaderUnionTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4HeaderUnionTypeSpec) ProtoMessage

func (*P4HeaderUnionTypeSpec) ProtoMessage()

func (*P4HeaderUnionTypeSpec) ProtoReflect

func (x *P4HeaderUnionTypeSpec) ProtoReflect() protoreflect.Message

func (*P4HeaderUnionTypeSpec) Reset

func (x *P4HeaderUnionTypeSpec) Reset()

func (*P4HeaderUnionTypeSpec) String

func (x *P4HeaderUnionTypeSpec) String() string

type P4HeaderUnionTypeSpec_Member

type P4HeaderUnionTypeSpec_Member struct {
	Name   string       `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Header *P4NamedType `protobuf:"bytes,2,opt,name=header,proto3" json:"header,omitempty"`
	// contains filtered or unexported fields
}

func (*P4HeaderUnionTypeSpec_Member) Descriptor deprecated

func (*P4HeaderUnionTypeSpec_Member) Descriptor() ([]byte, []int)

Deprecated: Use P4HeaderUnionTypeSpec_Member.ProtoReflect.Descriptor instead.

func (*P4HeaderUnionTypeSpec_Member) GetHeader

func (x *P4HeaderUnionTypeSpec_Member) GetHeader() *P4NamedType

func (*P4HeaderUnionTypeSpec_Member) GetName

func (x *P4HeaderUnionTypeSpec_Member) GetName() string

func (*P4HeaderUnionTypeSpec_Member) ProtoMessage

func (*P4HeaderUnionTypeSpec_Member) ProtoMessage()

func (*P4HeaderUnionTypeSpec_Member) ProtoReflect

func (*P4HeaderUnionTypeSpec_Member) Reset

func (x *P4HeaderUnionTypeSpec_Member) Reset()

func (*P4HeaderUnionTypeSpec_Member) String

type P4Ids

type P4Ids struct {
	// contains filtered or unexported fields
}

wrapping the enum in a message to avoid name collisions in C++, where "enum values are siblings of their type, not children of it"

func (*P4Ids) Descriptor deprecated

func (*P4Ids) Descriptor() ([]byte, []int)

Deprecated: Use P4Ids.ProtoReflect.Descriptor instead.

func (*P4Ids) ProtoMessage

func (*P4Ids) ProtoMessage()

func (*P4Ids) ProtoReflect

func (x *P4Ids) ProtoReflect() protoreflect.Message

func (*P4Ids) Reset

func (x *P4Ids) Reset()

func (*P4Ids) String

func (x *P4Ids) String() string

type P4Ids_Prefix

type P4Ids_Prefix int32

ids are allocated in such a way that it is possible based on an id to deduce the resource type (e.g. table, action, counter, ...). The most-significant byte of the 32-bit id encodes the resource type. The purpose of this enum is to define which value is used as the most-significant byte for each resource type. The P4 compiler must use these values when allocating ids for P4 objects. Other users of P4Info can refer to this enum to identify a resource type based on its id.

const (
	P4Ids_UNSPECIFIED P4Ids_Prefix = 0
	// P4 language built-ins
	P4Ids_ACTION            P4Ids_Prefix = 1
	P4Ids_TABLE             P4Ids_Prefix = 2
	P4Ids_VALUE_SET         P4Ids_Prefix = 3
	P4Ids_CONTROLLER_HEADER P4Ids_Prefix = 4
	// PSA externs
	P4Ids_PSA_EXTERNS_START P4Ids_Prefix = 16
	P4Ids_ACTION_PROFILE    P4Ids_Prefix = 17
	P4Ids_COUNTER           P4Ids_Prefix = 18
	P4Ids_DIRECT_COUNTER    P4Ids_Prefix = 19
	P4Ids_METER             P4Ids_Prefix = 20
	P4Ids_DIRECT_METER      P4Ids_Prefix = 21
	P4Ids_REGISTER          P4Ids_Prefix = 22
	P4Ids_DIGEST            P4Ids_Prefix = 23
	// externs for other architectures (vendor extensions)
	P4Ids_OTHER_EXTERNS_START        P4Ids_Prefix = 128
	P4Ids_MATCH_LOOKUP_TABLE         P4Ids_Prefix = 129
	P4Ids_TERNARY_MATCH_LOOKUP_TABLE P4Ids_Prefix = 130
	// max value for an unsigned 8-bit byte
	P4Ids_MAX P4Ids_Prefix = 255
)

func (P4Ids_Prefix) Descriptor

func (P4Ids_Prefix) Enum

func (x P4Ids_Prefix) Enum() *P4Ids_Prefix

func (P4Ids_Prefix) EnumDescriptor deprecated

func (P4Ids_Prefix) EnumDescriptor() ([]byte, []int)

Deprecated: Use P4Ids_Prefix.Descriptor instead.

func (P4Ids_Prefix) Number

func (P4Ids_Prefix) String

func (x P4Ids_Prefix) String() string

func (P4Ids_Prefix) Type

type P4Info

type P4Info struct {
	PkgInfo                  *PkgInfo                    `protobuf:"bytes,1,opt,name=pkg_info,json=pkgInfo,proto3" json:"pkg_info,omitempty"`
	Tables                   []*Table                    `protobuf:"bytes,2,rep,name=tables,proto3" json:"tables,omitempty"`
	Actions                  []*Action                   `protobuf:"bytes,3,rep,name=actions,proto3" json:"actions,omitempty"`
	ActionProfiles           []*ActionProfile            `protobuf:"bytes,4,rep,name=action_profiles,json=actionProfiles,proto3" json:"action_profiles,omitempty"`
	Counters                 []*Counter                  `protobuf:"bytes,5,rep,name=counters,proto3" json:"counters,omitempty"`
	DirectCounters           []*DirectCounter            `protobuf:"bytes,6,rep,name=direct_counters,json=directCounters,proto3" json:"direct_counters,omitempty"`
	Meters                   []*Meter                    `protobuf:"bytes,7,rep,name=meters,proto3" json:"meters,omitempty"`
	DirectMeters             []*DirectMeter              `protobuf:"bytes,8,rep,name=direct_meters,json=directMeters,proto3" json:"direct_meters,omitempty"`
	ControllerPacketMetadata []*ControllerPacketMetadata `` /* 135-byte string literal not displayed */
	ValueSets                []*ValueSet                 `protobuf:"bytes,10,rep,name=value_sets,json=valueSets,proto3" json:"value_sets,omitempty"`
	Registers                []*Register                 `protobuf:"bytes,11,rep,name=registers,proto3" json:"registers,omitempty"`
	Digests                  []*Digest                   `protobuf:"bytes,12,rep,name=digests,proto3" json:"digests,omitempty"`
	Externs                  []*Extern                   `protobuf:"bytes,100,rep,name=externs,proto3" json:"externs,omitempty"`
	TypeInfo                 *P4TypeInfo                 `protobuf:"bytes,200,opt,name=type_info,json=typeInfo,proto3" json:"type_info,omitempty"`
	// contains filtered or unexported fields
}

func (*P4Info) Descriptor deprecated

func (*P4Info) Descriptor() ([]byte, []int)

Deprecated: Use P4Info.ProtoReflect.Descriptor instead.

func (*P4Info) GetActionProfiles

func (x *P4Info) GetActionProfiles() []*ActionProfile

func (*P4Info) GetActions

func (x *P4Info) GetActions() []*Action

func (*P4Info) GetControllerPacketMetadata

func (x *P4Info) GetControllerPacketMetadata() []*ControllerPacketMetadata

func (*P4Info) GetCounters

func (x *P4Info) GetCounters() []*Counter

func (*P4Info) GetDigests

func (x *P4Info) GetDigests() []*Digest

func (*P4Info) GetDirectCounters

func (x *P4Info) GetDirectCounters() []*DirectCounter

func (*P4Info) GetDirectMeters

func (x *P4Info) GetDirectMeters() []*DirectMeter

func (*P4Info) GetExterns

func (x *P4Info) GetExterns() []*Extern

func (*P4Info) GetMeters

func (x *P4Info) GetMeters() []*Meter

func (*P4Info) GetPkgInfo

func (x *P4Info) GetPkgInfo() *PkgInfo

func (*P4Info) GetRegisters

func (x *P4Info) GetRegisters() []*Register

func (*P4Info) GetTables

func (x *P4Info) GetTables() []*Table

func (*P4Info) GetTypeInfo

func (x *P4Info) GetTypeInfo() *P4TypeInfo

func (*P4Info) GetValueSets

func (x *P4Info) GetValueSets() []*ValueSet

func (*P4Info) ProtoMessage

func (*P4Info) ProtoMessage()

func (*P4Info) ProtoReflect

func (x *P4Info) ProtoReflect() protoreflect.Message

func (*P4Info) Reset

func (x *P4Info) Reset()

func (*P4Info) String

func (x *P4Info) String() string

type P4IntTypeSpec

type P4IntTypeSpec struct {
	Bitwidth int32 `protobuf:"varint,1,opt,name=bitwidth,proto3" json:"bitwidth,omitempty"`
	// contains filtered or unexported fields
}

func (*P4IntTypeSpec) Descriptor deprecated

func (*P4IntTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4IntTypeSpec.ProtoReflect.Descriptor instead.

func (*P4IntTypeSpec) GetBitwidth

func (x *P4IntTypeSpec) GetBitwidth() int32

func (*P4IntTypeSpec) ProtoMessage

func (*P4IntTypeSpec) ProtoMessage()

func (*P4IntTypeSpec) ProtoReflect

func (x *P4IntTypeSpec) ProtoReflect() protoreflect.Message

func (*P4IntTypeSpec) Reset

func (x *P4IntTypeSpec) Reset()

func (*P4IntTypeSpec) String

func (x *P4IntTypeSpec) String() string

type P4NamedType

type P4NamedType struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

func (*P4NamedType) Descriptor deprecated

func (*P4NamedType) Descriptor() ([]byte, []int)

Deprecated: Use P4NamedType.ProtoReflect.Descriptor instead.

func (*P4NamedType) GetName

func (x *P4NamedType) GetName() string

func (*P4NamedType) ProtoMessage

func (*P4NamedType) ProtoMessage()

func (*P4NamedType) ProtoReflect

func (x *P4NamedType) ProtoReflect() protoreflect.Message

func (*P4NamedType) Reset

func (x *P4NamedType) Reset()

func (*P4NamedType) String

func (x *P4NamedType) String() string

type P4NewTypeSpec

type P4NewTypeSpec struct {

	// Types that are assignable to Representation:
	//	*P4NewTypeSpec_OriginalType
	//	*P4NewTypeSpec_TranslatedType
	Representation isP4NewTypeSpec_Representation `protobuf_oneof:"representation"`
	// for other annotations (not @p4runtime_translation)
	Annotations []string `protobuf:"bytes,3,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,5,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

New types introduced with the "type" keyword

func (*P4NewTypeSpec) Descriptor deprecated

func (*P4NewTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4NewTypeSpec.ProtoReflect.Descriptor instead.

func (*P4NewTypeSpec) GetAnnotationLocations

func (x *P4NewTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4NewTypeSpec) GetAnnotations

func (x *P4NewTypeSpec) GetAnnotations() []string

func (*P4NewTypeSpec) GetOriginalType

func (x *P4NewTypeSpec) GetOriginalType() *P4DataTypeSpec

func (*P4NewTypeSpec) GetRepresentation

func (m *P4NewTypeSpec) GetRepresentation() isP4NewTypeSpec_Representation

func (*P4NewTypeSpec) GetStructuredAnnotations

func (x *P4NewTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4NewTypeSpec) GetTranslatedType

func (x *P4NewTypeSpec) GetTranslatedType() *P4NewTypeTranslation

func (*P4NewTypeSpec) ProtoMessage

func (*P4NewTypeSpec) ProtoMessage()

func (*P4NewTypeSpec) ProtoReflect

func (x *P4NewTypeSpec) ProtoReflect() protoreflect.Message

func (*P4NewTypeSpec) Reset

func (x *P4NewTypeSpec) Reset()

func (*P4NewTypeSpec) String

func (x *P4NewTypeSpec) String() string

type P4NewTypeSpec_OriginalType

type P4NewTypeSpec_OriginalType struct {
	// if no @p4runtime_translation annotation present
	OriginalType *P4DataTypeSpec `protobuf:"bytes,1,opt,name=original_type,json=originalType,proto3,oneof"`
}

type P4NewTypeSpec_TranslatedType

type P4NewTypeSpec_TranslatedType struct {
	// if @p4runtime_translation annotation present
	TranslatedType *P4NewTypeTranslation `protobuf:"bytes,2,opt,name=translated_type,json=translatedType,proto3,oneof"`
}

type P4NewTypeTranslation

type P4NewTypeTranslation struct {

	// the URI uniquely identifies the translation in order to enable the
	// P4Runtime agent to perform value-mapping appropriately when required. It is
	// recommended that the URI includes at least the P4 architecture name and the
	// type name.
	Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
	// The object is either represented as an unsigned integer with a bitwidth of
	// `sdn_bitwidth`, or as a string.
	//
	// Types that are assignable to SdnType:
	//	*P4NewTypeTranslation_SdnBitwidth
	//	*P4NewTypeTranslation_SdnString_
	SdnType isP4NewTypeTranslation_SdnType `protobuf_oneof:"sdn_type"`
	// contains filtered or unexported fields
}

func (*P4NewTypeTranslation) Descriptor deprecated

func (*P4NewTypeTranslation) Descriptor() ([]byte, []int)

Deprecated: Use P4NewTypeTranslation.ProtoReflect.Descriptor instead.

func (*P4NewTypeTranslation) GetSdnBitwidth

func (x *P4NewTypeTranslation) GetSdnBitwidth() int32

func (*P4NewTypeTranslation) GetSdnString

func (*P4NewTypeTranslation) GetSdnType

func (m *P4NewTypeTranslation) GetSdnType() isP4NewTypeTranslation_SdnType

func (*P4NewTypeTranslation) GetUri

func (x *P4NewTypeTranslation) GetUri() string

func (*P4NewTypeTranslation) ProtoMessage

func (*P4NewTypeTranslation) ProtoMessage()

func (*P4NewTypeTranslation) ProtoReflect

func (x *P4NewTypeTranslation) ProtoReflect() protoreflect.Message

func (*P4NewTypeTranslation) Reset

func (x *P4NewTypeTranslation) Reset()

func (*P4NewTypeTranslation) String

func (x *P4NewTypeTranslation) String() string

type P4NewTypeTranslation_SdnBitwidth

type P4NewTypeTranslation_SdnBitwidth struct {
	SdnBitwidth int32 `protobuf:"varint,2,opt,name=sdn_bitwidth,json=sdnBitwidth,proto3,oneof"`
}

type P4NewTypeTranslation_SdnString

type P4NewTypeTranslation_SdnString struct {
	// contains filtered or unexported fields
}

func (*P4NewTypeTranslation_SdnString) Descriptor deprecated

func (*P4NewTypeTranslation_SdnString) Descriptor() ([]byte, []int)

Deprecated: Use P4NewTypeTranslation_SdnString.ProtoReflect.Descriptor instead.

func (*P4NewTypeTranslation_SdnString) ProtoMessage

func (*P4NewTypeTranslation_SdnString) ProtoMessage()

func (*P4NewTypeTranslation_SdnString) ProtoReflect

func (*P4NewTypeTranslation_SdnString) Reset

func (x *P4NewTypeTranslation_SdnString) Reset()

func (*P4NewTypeTranslation_SdnString) String

type P4NewTypeTranslation_SdnString_

type P4NewTypeTranslation_SdnString_ struct {
	SdnString *P4NewTypeTranslation_SdnString `protobuf:"bytes,3,opt,name=sdn_string,json=sdnString,proto3,oneof"`
}

type P4SerializableEnumTypeSpec

type P4SerializableEnumTypeSpec struct {
	UnderlyingType *P4BitTypeSpec                       `protobuf:"bytes,1,opt,name=underlying_type,json=underlyingType,proto3" json:"underlying_type,omitempty"`
	Members        []*P4SerializableEnumTypeSpec_Member `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"`
	Annotations    []string                             `protobuf:"bytes,3,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,5,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

For serializable (or "unsafe") enums, which have an underlying type. Note that as per the P4_16 specification, the underlying representation can only be a bit<W> type.

func (*P4SerializableEnumTypeSpec) Descriptor deprecated

func (*P4SerializableEnumTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4SerializableEnumTypeSpec.ProtoReflect.Descriptor instead.

func (*P4SerializableEnumTypeSpec) GetAnnotationLocations

func (x *P4SerializableEnumTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4SerializableEnumTypeSpec) GetAnnotations

func (x *P4SerializableEnumTypeSpec) GetAnnotations() []string

func (*P4SerializableEnumTypeSpec) GetMembers

func (*P4SerializableEnumTypeSpec) GetStructuredAnnotations

func (x *P4SerializableEnumTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4SerializableEnumTypeSpec) GetUnderlyingType

func (x *P4SerializableEnumTypeSpec) GetUnderlyingType() *P4BitTypeSpec

func (*P4SerializableEnumTypeSpec) ProtoMessage

func (*P4SerializableEnumTypeSpec) ProtoMessage()

func (*P4SerializableEnumTypeSpec) ProtoReflect

func (*P4SerializableEnumTypeSpec) Reset

func (x *P4SerializableEnumTypeSpec) Reset()

func (*P4SerializableEnumTypeSpec) String

func (x *P4SerializableEnumTypeSpec) String() string

type P4SerializableEnumTypeSpec_Member

type P4SerializableEnumTypeSpec_Member struct {
	Name        string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Value       []byte   `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	Annotations []string `protobuf:"bytes,3,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,5,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*P4SerializableEnumTypeSpec_Member) Descriptor deprecated

func (*P4SerializableEnumTypeSpec_Member) Descriptor() ([]byte, []int)

Deprecated: Use P4SerializableEnumTypeSpec_Member.ProtoReflect.Descriptor instead.

func (*P4SerializableEnumTypeSpec_Member) GetAnnotationLocations

func (x *P4SerializableEnumTypeSpec_Member) GetAnnotationLocations() []*SourceLocation

func (*P4SerializableEnumTypeSpec_Member) GetAnnotations

func (x *P4SerializableEnumTypeSpec_Member) GetAnnotations() []string

func (*P4SerializableEnumTypeSpec_Member) GetName

func (*P4SerializableEnumTypeSpec_Member) GetStructuredAnnotations

func (x *P4SerializableEnumTypeSpec_Member) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4SerializableEnumTypeSpec_Member) GetValue

func (x *P4SerializableEnumTypeSpec_Member) GetValue() []byte

func (*P4SerializableEnumTypeSpec_Member) ProtoMessage

func (*P4SerializableEnumTypeSpec_Member) ProtoMessage()

func (*P4SerializableEnumTypeSpec_Member) ProtoReflect

func (*P4SerializableEnumTypeSpec_Member) Reset

func (*P4SerializableEnumTypeSpec_Member) String

type P4StructTypeSpec

type P4StructTypeSpec struct {
	Members     []*P4StructTypeSpec_Member `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	Annotations []string                   `protobuf:"bytes,2,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations   []*SourceLocation       `protobuf:"bytes,3,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,4,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*P4StructTypeSpec) Descriptor deprecated

func (*P4StructTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4StructTypeSpec.ProtoReflect.Descriptor instead.

func (*P4StructTypeSpec) GetAnnotationLocations

func (x *P4StructTypeSpec) GetAnnotationLocations() []*SourceLocation

func (*P4StructTypeSpec) GetAnnotations

func (x *P4StructTypeSpec) GetAnnotations() []string

func (*P4StructTypeSpec) GetMembers

func (x *P4StructTypeSpec) GetMembers() []*P4StructTypeSpec_Member

func (*P4StructTypeSpec) GetStructuredAnnotations

func (x *P4StructTypeSpec) GetStructuredAnnotations() []*StructuredAnnotation

func (*P4StructTypeSpec) ProtoMessage

func (*P4StructTypeSpec) ProtoMessage()

func (*P4StructTypeSpec) ProtoReflect

func (x *P4StructTypeSpec) ProtoReflect() protoreflect.Message

func (*P4StructTypeSpec) Reset

func (x *P4StructTypeSpec) Reset()

func (*P4StructTypeSpec) String

func (x *P4StructTypeSpec) String() string

type P4StructTypeSpec_Member

type P4StructTypeSpec_Member struct {
	Name     string          `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	TypeSpec *P4DataTypeSpec `protobuf:"bytes,2,opt,name=type_spec,json=typeSpec,proto3" json:"type_spec,omitempty"`
	// contains filtered or unexported fields
}

func (*P4StructTypeSpec_Member) Descriptor deprecated

func (*P4StructTypeSpec_Member) Descriptor() ([]byte, []int)

Deprecated: Use P4StructTypeSpec_Member.ProtoReflect.Descriptor instead.

func (*P4StructTypeSpec_Member) GetName

func (x *P4StructTypeSpec_Member) GetName() string

func (*P4StructTypeSpec_Member) GetTypeSpec

func (x *P4StructTypeSpec_Member) GetTypeSpec() *P4DataTypeSpec

func (*P4StructTypeSpec_Member) ProtoMessage

func (*P4StructTypeSpec_Member) ProtoMessage()

func (*P4StructTypeSpec_Member) ProtoReflect

func (x *P4StructTypeSpec_Member) ProtoReflect() protoreflect.Message

func (*P4StructTypeSpec_Member) Reset

func (x *P4StructTypeSpec_Member) Reset()

func (*P4StructTypeSpec_Member) String

func (x *P4StructTypeSpec_Member) String() string

type P4TupleTypeSpec

type P4TupleTypeSpec struct {
	Members []*P4DataTypeSpec `protobuf:"bytes,1,rep,name=members,proto3" json:"members,omitempty"`
	// contains filtered or unexported fields
}

From the P4_16 spec: "A tuple is similar to a struct, in that it holds multiple values. Unlike a struct type, tuples have no named fields."

func (*P4TupleTypeSpec) Descriptor deprecated

func (*P4TupleTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4TupleTypeSpec.ProtoReflect.Descriptor instead.

func (*P4TupleTypeSpec) GetMembers

func (x *P4TupleTypeSpec) GetMembers() []*P4DataTypeSpec

func (*P4TupleTypeSpec) ProtoMessage

func (*P4TupleTypeSpec) ProtoMessage()

func (*P4TupleTypeSpec) ProtoReflect

func (x *P4TupleTypeSpec) ProtoReflect() protoreflect.Message

func (*P4TupleTypeSpec) Reset

func (x *P4TupleTypeSpec) Reset()

func (*P4TupleTypeSpec) String

func (x *P4TupleTypeSpec) String() string

type P4TypeInfo

type P4TypeInfo struct {
	Structs           map[string]*P4StructTypeSpec           `` /* 155-byte string literal not displayed */
	Headers           map[string]*P4HeaderTypeSpec           `` /* 155-byte string literal not displayed */
	HeaderUnions      map[string]*P4HeaderUnionTypeSpec      `` /* 185-byte string literal not displayed */
	Enums             map[string]*P4EnumTypeSpec             `` /* 151-byte string literal not displayed */
	Error             *P4ErrorTypeSpec                       `protobuf:"bytes,5,opt,name=error,proto3" json:"error,omitempty"`
	SerializableEnums map[string]*P4SerializableEnumTypeSpec `` /* 200-byte string literal not displayed */
	NewTypes          map[string]*P4NewTypeSpec              `` /* 173-byte string literal not displayed */
	// contains filtered or unexported fields
}

These P4 types (struct, header_type, header_union and enum) are guaranteed to have a fully-qualified name (e.g. you cannot use an anonymous struct to declare a variable like in C). Instead of duplicating the type spec for these every time the type is used, we include the type spec once in this P4TypeInfo message and refer to the types by name in the P4DataTypeSpec message. We also support annotations for these type specs which can be useful, e.g. to identify well-known headers (such as ipv4).

func (*P4TypeInfo) Descriptor deprecated

func (*P4TypeInfo) Descriptor() ([]byte, []int)

Deprecated: Use P4TypeInfo.ProtoReflect.Descriptor instead.

func (*P4TypeInfo) GetEnums

func (x *P4TypeInfo) GetEnums() map[string]*P4EnumTypeSpec

func (*P4TypeInfo) GetError

func (x *P4TypeInfo) GetError() *P4ErrorTypeSpec

func (*P4TypeInfo) GetHeaderUnions

func (x *P4TypeInfo) GetHeaderUnions() map[string]*P4HeaderUnionTypeSpec

func (*P4TypeInfo) GetHeaders

func (x *P4TypeInfo) GetHeaders() map[string]*P4HeaderTypeSpec

func (*P4TypeInfo) GetNewTypes

func (x *P4TypeInfo) GetNewTypes() map[string]*P4NewTypeSpec

func (*P4TypeInfo) GetSerializableEnums

func (x *P4TypeInfo) GetSerializableEnums() map[string]*P4SerializableEnumTypeSpec

func (*P4TypeInfo) GetStructs

func (x *P4TypeInfo) GetStructs() map[string]*P4StructTypeSpec

func (*P4TypeInfo) ProtoMessage

func (*P4TypeInfo) ProtoMessage()

func (*P4TypeInfo) ProtoReflect

func (x *P4TypeInfo) ProtoReflect() protoreflect.Message

func (*P4TypeInfo) Reset

func (x *P4TypeInfo) Reset()

func (*P4TypeInfo) String

func (x *P4TypeInfo) String() string

type P4VarbitTypeSpec

type P4VarbitTypeSpec struct {
	MaxBitwidth int32 `protobuf:"varint,1,opt,name=max_bitwidth,json=maxBitwidth,proto3" json:"max_bitwidth,omitempty"`
	// contains filtered or unexported fields
}

func (*P4VarbitTypeSpec) Descriptor deprecated

func (*P4VarbitTypeSpec) Descriptor() ([]byte, []int)

Deprecated: Use P4VarbitTypeSpec.ProtoReflect.Descriptor instead.

func (*P4VarbitTypeSpec) GetMaxBitwidth

func (x *P4VarbitTypeSpec) GetMaxBitwidth() int32

func (*P4VarbitTypeSpec) ProtoMessage

func (*P4VarbitTypeSpec) ProtoMessage()

func (*P4VarbitTypeSpec) ProtoReflect

func (x *P4VarbitTypeSpec) ProtoReflect() protoreflect.Message

func (*P4VarbitTypeSpec) Reset

func (x *P4VarbitTypeSpec) Reset()

func (*P4VarbitTypeSpec) String

func (x *P4VarbitTypeSpec) String() string

type PkgInfo

type PkgInfo struct {

	// a definitive name for this configuration, e.g. switch.p4_v1.0
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// configuration version, free-format string
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
	// brief and detailed descriptions
	Doc *Documentation `protobuf:"bytes,3,opt,name=doc,proto3" json:"doc,omitempty"`
	// Miscellaneous metadata, free-form; a way to extend PkgInfo
	Annotations []string `protobuf:"bytes,4,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations []*SourceLocation `protobuf:"bytes,10,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	// the target architecture, e.g. "psa"
	Arch string `protobuf:"bytes,5,opt,name=arch,proto3" json:"arch,omitempty"`
	// organization which produced the configuration, e.g. "p4.org"
	Organization string `protobuf:"bytes,6,opt,name=organization,proto3" json:"organization,omitempty"`
	// contact info for support,e.g. "tech-support@acme.org"
	Contact string `protobuf:"bytes,7,opt,name=contact,proto3" json:"contact,omitempty"`
	// url for more information, e.g.
	// "http://support.p4.org/ref/p4/switch.p4_v1.0"
	Url string `protobuf:"bytes,8,opt,name=url,proto3" json:"url,omitempty"`
	// Miscellaneous metadata, structured; a way to extend PkgInfo
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,9,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

Top-level package documentation describing the forwarding pipeline config Can be used to manage multiple P4 packages.

func (*PkgInfo) Descriptor deprecated

func (*PkgInfo) Descriptor() ([]byte, []int)

Deprecated: Use PkgInfo.ProtoReflect.Descriptor instead.

func (*PkgInfo) GetAnnotationLocations

func (x *PkgInfo) GetAnnotationLocations() []*SourceLocation

func (*PkgInfo) GetAnnotations

func (x *PkgInfo) GetAnnotations() []string

func (*PkgInfo) GetArch

func (x *PkgInfo) GetArch() string

func (*PkgInfo) GetContact

func (x *PkgInfo) GetContact() string

func (*PkgInfo) GetDoc

func (x *PkgInfo) GetDoc() *Documentation

func (*PkgInfo) GetName

func (x *PkgInfo) GetName() string

func (*PkgInfo) GetOrganization

func (x *PkgInfo) GetOrganization() string

func (*PkgInfo) GetStructuredAnnotations

func (x *PkgInfo) GetStructuredAnnotations() []*StructuredAnnotation

func (*PkgInfo) GetUrl

func (x *PkgInfo) GetUrl() string

func (*PkgInfo) GetVersion

func (x *PkgInfo) GetVersion() string

func (*PkgInfo) ProtoMessage

func (*PkgInfo) ProtoMessage()

func (*PkgInfo) ProtoReflect

func (x *PkgInfo) ProtoReflect() protoreflect.Message

func (*PkgInfo) Reset

func (x *PkgInfo) Reset()

func (*PkgInfo) String

func (x *PkgInfo) String() string

type Preamble

type Preamble struct {

	// ids share the same number-space; e.g. table ids cannot overlap with counter
	// ids. Even though this is irrelevant to this proto definition, the ids are
	// allocated in such a way that it is possible based on an id to deduce the
	// resource type (e.g. table, action, counter, ...). This means that code
	// using these ids can detect if the wrong resource type is used
	// somewhere. This also means that ids of different types can be mixed
	// (e.g. direct resource list for a table) without ambiguity. Note that id 0
	// is reserved and means "invalid id".
	Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// fully qualified name of the P4 object, e.g. c1.c2.ipv4_lpm
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// an alias (alternative name) for the P4 object, probably shorter than its
	// fully qualified name. The only constraint is for it to be unique with
	// respect to other P4 objects of the same type. By default, the compiler uses
	// the shortest suffix of the name that uniquely identifies the object. For
	// example if the P4 program contains two tables with names s.c1.t and s.c2.t,
	// the default aliases will respectively be c1.t and c2.t. In the future, the
	// P4 programmer may also be able to override the default alias for any P4
	// object (TBD).
	Alias       string   `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"`
	Annotations []string `protobuf:"bytes,4,rep,name=annotations,proto3" json:"annotations,omitempty"`
	// Optional. If present, the location of `annotations[i]` is given by
	// `annotation_locations[i]`.
	AnnotationLocations []*SourceLocation `protobuf:"bytes,7,rep,name=annotation_locations,json=annotationLocations,proto3" json:"annotation_locations,omitempty"`
	// Documentation of the entity
	Doc                   *Documentation          `protobuf:"bytes,5,opt,name=doc,proto3" json:"doc,omitempty"`
	StructuredAnnotations []*StructuredAnnotation `protobuf:"bytes,6,rep,name=structured_annotations,json=structuredAnnotations,proto3" json:"structured_annotations,omitempty"`
	// contains filtered or unexported fields
}

func (*Preamble) Descriptor deprecated

func (*Preamble) Descriptor() ([]byte, []int)

Deprecated: Use Preamble.ProtoReflect.Descriptor instead.

func (*Preamble) GetAlias

func (x *Preamble) GetAlias() string

func (*Preamble) GetAnnotationLocations

func (x *Preamble) GetAnnotationLocations() []*SourceLocation

func (*Preamble) GetAnnotations

func (x *Preamble) GetAnnotations() []string

func (*Preamble) GetDoc

func (x *Preamble) GetDoc() *Documentation

func (*Preamble) GetId

func (x *Preamble) GetId() uint32

func (*Preamble) GetName

func (x *Preamble) GetName() string

func (*Preamble) GetStructuredAnnotations

func (x *Preamble) GetStructuredAnnotations() []*StructuredAnnotation

func (*Preamble) ProtoMessage

func (*Preamble) ProtoMessage()

func (*Preamble) ProtoReflect

func (x *Preamble) ProtoReflect() protoreflect.Message

func (*Preamble) Reset

func (x *Preamble) Reset()

func (*Preamble) String

func (x *Preamble) String() string

type Register

type Register struct {
	Preamble *Preamble       `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	TypeSpec *P4DataTypeSpec `protobuf:"bytes,2,opt,name=type_spec,json=typeSpec,proto3" json:"type_spec,omitempty"`
	Size     int32           `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
	// unset if index is not user-defined type
	IndexTypeName *P4NamedType `protobuf:"bytes,4,opt,name=index_type_name,json=indexTypeName,proto3" json:"index_type_name,omitempty"`
	// contains filtered or unexported fields
}

func (*Register) Descriptor deprecated

func (*Register) Descriptor() ([]byte, []int)

Deprecated: Use Register.ProtoReflect.Descriptor instead.

func (*Register) GetIndexTypeName

func (x *Register) GetIndexTypeName() *P4NamedType

func (*Register) GetPreamble

func (x *Register) GetPreamble() *Preamble

func (*Register) GetSize

func (x *Register) GetSize() int32

func (*Register) GetTypeSpec

func (x *Register) GetTypeSpec() *P4DataTypeSpec

func (*Register) ProtoMessage

func (*Register) ProtoMessage()

func (*Register) ProtoReflect

func (x *Register) ProtoReflect() protoreflect.Message

func (*Register) Reset

func (x *Register) Reset()

func (*Register) String

func (x *Register) String() string

type SourceLocation

type SourceLocation struct {

	// Path to the source file (absolute or relative to the working directory).
	File string `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"`
	// Line and column numbers within the source file, 1-based.
	Line   int32 `protobuf:"varint,2,opt,name=line,proto3" json:"line,omitempty"`
	Column int32 `protobuf:"varint,3,opt,name=column,proto3" json:"column,omitempty"`
	// contains filtered or unexported fields
}

Location of code relative to a given source file.

func (*SourceLocation) Descriptor deprecated

func (*SourceLocation) Descriptor() ([]byte, []int)

Deprecated: Use SourceLocation.ProtoReflect.Descriptor instead.

func (*SourceLocation) GetColumn

func (x *SourceLocation) GetColumn() int32

func (*SourceLocation) GetFile

func (x *SourceLocation) GetFile() string

func (*SourceLocation) GetLine

func (x *SourceLocation) GetLine() int32

func (*SourceLocation) ProtoMessage

func (*SourceLocation) ProtoMessage()

func (*SourceLocation) ProtoReflect

func (x *SourceLocation) ProtoReflect() protoreflect.Message

func (*SourceLocation) Reset

func (x *SourceLocation) Reset()

func (*SourceLocation) String

func (x *SourceLocation) String() string

type StructuredAnnotation

type StructuredAnnotation struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Types that are assignable to Body:
	//	*StructuredAnnotation_ExpressionList
	//	*StructuredAnnotation_KvPairList
	Body isStructuredAnnotation_Body `protobuf_oneof:"body"`
	// Optional. Location of the '@' symbol of this annotation in the source code.
	SourceLocation *SourceLocation `protobuf:"bytes,4,opt,name=source_location,json=sourceLocation,proto3" json:"source_location,omitempty"`
	// contains filtered or unexported fields
}

func (*StructuredAnnotation) Descriptor deprecated

func (*StructuredAnnotation) Descriptor() ([]byte, []int)

Deprecated: Use StructuredAnnotation.ProtoReflect.Descriptor instead.

func (*StructuredAnnotation) GetBody

func (m *StructuredAnnotation) GetBody() isStructuredAnnotation_Body

func (*StructuredAnnotation) GetExpressionList

func (x *StructuredAnnotation) GetExpressionList() *ExpressionList

func (*StructuredAnnotation) GetKvPairList

func (x *StructuredAnnotation) GetKvPairList() *KeyValuePairList

func (*StructuredAnnotation) GetName

func (x *StructuredAnnotation) GetName() string

func (*StructuredAnnotation) GetSourceLocation

func (x *StructuredAnnotation) GetSourceLocation() *SourceLocation

func (*StructuredAnnotation) ProtoMessage

func (*StructuredAnnotation) ProtoMessage()

func (*StructuredAnnotation) ProtoReflect

func (x *StructuredAnnotation) ProtoReflect() protoreflect.Message

func (*StructuredAnnotation) Reset

func (x *StructuredAnnotation) Reset()

func (*StructuredAnnotation) String

func (x *StructuredAnnotation) String() string

type StructuredAnnotation_ExpressionList

type StructuredAnnotation_ExpressionList struct {
	ExpressionList *ExpressionList `protobuf:"bytes,2,opt,name=expression_list,json=expressionList,proto3,oneof"`
}

type StructuredAnnotation_KvPairList

type StructuredAnnotation_KvPairList struct {
	KvPairList *KeyValuePairList `protobuf:"bytes,3,opt,name=kv_pair_list,json=kvPairList,proto3,oneof"`
}

type Table

type Table struct {
	Preamble    *Preamble     `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	MatchFields []*MatchField `protobuf:"bytes,2,rep,name=match_fields,json=matchFields,proto3" json:"match_fields,omitempty"`
	// even when the table is indirect (see implementation_id) below, this field
	// includes all possible actions for the table; by using ActionRef instead of
	// a repeated field of action ids, each action reference in a P4 table is able
	// to have its own annotations
	ActionRefs []*ActionRef `protobuf:"bytes,3,rep,name=action_refs,json=actionRefs,proto3" json:"action_refs,omitempty"`
	// 0 (default value) means that the table does not have a const default action
	ConstDefaultActionId uint32 `` /* 126-byte string literal not displayed */
	// P4 id of the "implementation" for this table (e.g. action profile id); 0
	// (default value) means that the table is a regular (direct) match table. As
	// of today, only action profiles are supported but other table
	// implementations may be added in the future
	ImplementationId uint32 `protobuf:"varint,6,opt,name=implementation_id,json=implementationId,proto3" json:"implementation_id,omitempty"`
	// ids of the direct resources (if any) attached to this table; for now this
	// includes only direct counters and direct meters, but other resources may be
	// added in the future
	DirectResourceIds []uint32 `protobuf:"varint,7,rep,packed,name=direct_resource_ids,json=directResourceIds,proto3" json:"direct_resource_ids,omitempty"`
	Size              int64    `protobuf:"varint,8,opt,name=size,proto3" json:"size,omitempty"` // max number of entries in table
	// is idle timeout supported for this table?
	IdleTimeoutBehavior Table_IdleTimeoutBehavior `` /* 165-byte string literal not displayed */
	// table with static P4 entries, cannot be modified at runtime
	IsConstTable bool `protobuf:"varint,10,opt,name=is_const_table,json=isConstTable,proto3" json:"is_const_table,omitempty"`
	// architecture-specific table properties which are not part of the core P4
	// language or of the PSA architecture.
	OtherProperties *any1.Any `protobuf:"bytes,100,opt,name=other_properties,json=otherProperties,proto3" json:"other_properties,omitempty"`
	// contains filtered or unexported fields
}

func (*Table) Descriptor deprecated

func (*Table) Descriptor() ([]byte, []int)

Deprecated: Use Table.ProtoReflect.Descriptor instead.

func (*Table) GetActionRefs

func (x *Table) GetActionRefs() []*ActionRef

func (*Table) GetConstDefaultActionId

func (x *Table) GetConstDefaultActionId() uint32

func (*Table) GetDirectResourceIds

func (x *Table) GetDirectResourceIds() []uint32

func (*Table) GetIdleTimeoutBehavior

func (x *Table) GetIdleTimeoutBehavior() Table_IdleTimeoutBehavior

func (*Table) GetImplementationId

func (x *Table) GetImplementationId() uint32

func (*Table) GetIsConstTable

func (x *Table) GetIsConstTable() bool

func (*Table) GetMatchFields

func (x *Table) GetMatchFields() []*MatchField

func (*Table) GetOtherProperties

func (x *Table) GetOtherProperties() *any1.Any

func (*Table) GetPreamble

func (x *Table) GetPreamble() *Preamble

func (*Table) GetSize

func (x *Table) GetSize() int64

func (*Table) ProtoMessage

func (*Table) ProtoMessage()

func (*Table) ProtoReflect

func (x *Table) ProtoReflect() protoreflect.Message

func (*Table) Reset

func (x *Table) Reset()

func (*Table) String

func (x *Table) String() string

type Table_IdleTimeoutBehavior

type Table_IdleTimeoutBehavior int32

this enum can be extended in the future with other behaviors, such as "HARD_EVICTION"

const (
	Table_NO_TIMEOUT     Table_IdleTimeoutBehavior = 0
	Table_NOTIFY_CONTROL Table_IdleTimeoutBehavior = 1
)

func (Table_IdleTimeoutBehavior) Descriptor

func (Table_IdleTimeoutBehavior) Enum

func (Table_IdleTimeoutBehavior) EnumDescriptor deprecated

func (Table_IdleTimeoutBehavior) EnumDescriptor() ([]byte, []int)

Deprecated: Use Table_IdleTimeoutBehavior.Descriptor instead.

func (Table_IdleTimeoutBehavior) Number

func (Table_IdleTimeoutBehavior) String

func (x Table_IdleTimeoutBehavior) String() string

func (Table_IdleTimeoutBehavior) Type

type ValueSet

type ValueSet struct {
	Preamble *Preamble     `protobuf:"bytes,1,opt,name=preamble,proto3" json:"preamble,omitempty"`
	Match    []*MatchField `protobuf:"bytes,2,rep,name=match,proto3" json:"match,omitempty"`
	// number of entries in the value_set, as per the P4 constructor call.
	Size int32 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
	// contains filtered or unexported fields
}

func (*ValueSet) Descriptor deprecated

func (*ValueSet) Descriptor() ([]byte, []int)

Deprecated: Use ValueSet.ProtoReflect.Descriptor instead.

func (*ValueSet) GetMatch

func (x *ValueSet) GetMatch() []*MatchField

func (*ValueSet) GetPreamble

func (x *ValueSet) GetPreamble() *Preamble

func (*ValueSet) GetSize

func (x *ValueSet) GetSize() int32

func (*ValueSet) ProtoMessage

func (*ValueSet) ProtoMessage()

func (*ValueSet) ProtoReflect

func (x *ValueSet) ProtoReflect() protoreflect.Message

func (*ValueSet) Reset

func (x *ValueSet) Reset()

func (*ValueSet) String

func (x *ValueSet) String() string

Jump to

Keyboard shortcuts

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