diff --git a/pkg/util/flag/BUILD b/pkg/util/flag/BUILD index 25bf080aa..f6aae4b33 100644 --- a/pkg/util/flag/BUILD +++ b/pkg/util/flag/BUILD @@ -32,6 +32,7 @@ go_library( "map_string_bool.go", "map_string_string.go", "namedcertkey_flag.go", + "noop.go", "omitempty.go", "string_flag.go", "tristate.go", diff --git a/pkg/util/flag/noop.go b/pkg/util/flag/noop.go new file mode 100644 index 000000000..03f7f14c0 --- /dev/null +++ b/pkg/util/flag/noop.go @@ -0,0 +1,41 @@ +/* +Copyright 2018 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package flag + +import ( + goflag "flag" + "github.com/spf13/pflag" +) + +// NoOp implements goflag.Value and plfag.Value, +// but has a noop Set implementation +type NoOp struct{} + +var _ goflag.Value = NoOp{} +var _ pflag.Value = NoOp{} + +func (NoOp) String() string { + return "" +} + +func (NoOp) Set(val string) error { + return nil +} + +func (NoOp) Type() string { + return "NoOp" +}