mirror of
https://github.com/kubernetes-sigs/node-feature-discovery.git
synced 2024-12-14 11:57:51 +00:00
pkg/api/feature: revert back to structs instead of pointers
Less error prone, as no chance for a nil pointer dereference.
This commit is contained in:
parent
67330e1441
commit
dd92c9a9ce
2 changed files with 12 additions and 12 deletions
|
@ -20,28 +20,28 @@ package feature
|
||||||
// features to empty values
|
// features to empty values
|
||||||
func NewDomainFeatures() *DomainFeatures {
|
func NewDomainFeatures() *DomainFeatures {
|
||||||
return &DomainFeatures{
|
return &DomainFeatures{
|
||||||
Keys: make(map[string]*KeyFeatureSet),
|
Keys: make(map[string]KeyFeatureSet),
|
||||||
Values: make(map[string]*ValueFeatureSet),
|
Values: make(map[string]ValueFeatureSet),
|
||||||
Instances: make(map[string]*InstanceFeatureSet)}
|
Instances: make(map[string]InstanceFeatureSet)}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewKeyFeatures(keys ...string) *KeyFeatureSet {
|
func NewKeyFeatures(keys ...string) KeyFeatureSet {
|
||||||
e := make(map[string]Nil, len(keys))
|
e := make(map[string]Nil, len(keys))
|
||||||
for _, k := range keys {
|
for _, k := range keys {
|
||||||
e[k] = Nil{}
|
e[k] = Nil{}
|
||||||
}
|
}
|
||||||
return &KeyFeatureSet{Elements: e}
|
return KeyFeatureSet{Elements: e}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewValueFeatures(values map[string]string) *ValueFeatureSet {
|
func NewValueFeatures(values map[string]string) ValueFeatureSet {
|
||||||
if values == nil {
|
if values == nil {
|
||||||
values = make(map[string]string)
|
values = make(map[string]string)
|
||||||
}
|
}
|
||||||
return &ValueFeatureSet{Elements: values}
|
return ValueFeatureSet{Elements: values}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewInstanceFeatures(instances []InstanceFeature) *InstanceFeatureSet {
|
func NewInstanceFeatures(instances []InstanceFeature) InstanceFeatureSet {
|
||||||
return &InstanceFeatureSet{Elements: instances}
|
return InstanceFeatureSet{Elements: instances}
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewInstanceFeature(attrs map[string]string) *InstanceFeature {
|
func NewInstanceFeature(attrs map[string]string) *InstanceFeature {
|
||||||
|
|
|
@ -22,9 +22,9 @@ type Features map[string]*DomainFeatures
|
||||||
|
|
||||||
// DomainFeatures is the collection of all discovered features of one domain.
|
// DomainFeatures is the collection of all discovered features of one domain.
|
||||||
type DomainFeatures struct {
|
type DomainFeatures struct {
|
||||||
Keys map[string]*KeyFeatureSet `protobuf:"bytes,1,rep,name=keys"`
|
Keys map[string]KeyFeatureSet `protobuf:"bytes,1,rep,name=keys"`
|
||||||
Values map[string]*ValueFeatureSet `protobuf:"bytes,2,rep,name=values"`
|
Values map[string]ValueFeatureSet `protobuf:"bytes,2,rep,name=values"`
|
||||||
Instances map[string]*InstanceFeatureSet `protobuf:"bytes,3,rep,name=instances"`
|
Instances map[string]InstanceFeatureSet `protobuf:"bytes,3,rep,name=instances"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// KeyFeatureSet is a set of simple features only containing names without values.
|
// KeyFeatureSet is a set of simple features only containing names without values.
|
||||||
|
|
Loading…
Reference in a new issue