From ee78ae41722875ea3bd55977e3f0a6b763937327 Mon Sep 17 00:00:00 2001 From: Felix Lange Date: Wed, 6 Aug 2025 23:01:51 +0200 Subject: [PATCH] params: add Defined --- params/registry.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/params/registry.go b/params/registry.go index 074a198c99..790122aac5 100644 --- a/params/registry.go +++ b/params/registry.go @@ -39,6 +39,15 @@ func (p Parameter[V]) Get(cfg *Config2) V { return p.info.defaultValue.(V) } +// Defined reports whether the parameter is set in the config. +func (p Parameter[V]) Defined(cfg *Config2) bool { + if p.info.id == 0 { + panic("zero parameter") + } + _, ok := cfg.param[p.info.id] + return ok +} + // V creates a ParamValue with the given value. You need this to // specify parameter values when constructing a Config in code. func (p Parameter[V]) V(v V) ParamValue {