@@ -140,6 +140,9 @@ type Options struct {
140
140
// TagName specifies another tag name to use rather than the default 'env'.
141
141
TagName string
142
142
143
+ // PrefixTagName specifies another prefix tag name to use rather than the default 'envPrefix'.
144
+ PrefixTagName string
145
+
143
146
// DefaultValueTagName specifies another default tag name to use rather than the default 'envDefault'.
144
147
DefaultValueTagName string
145
148
@@ -178,6 +181,7 @@ func (opts *Options) getRawEnv(s string) string {
178
181
func defaultOptions () Options {
179
182
return Options {
180
183
TagName : "env" ,
184
+ PrefixTagName : "envPrefix" ,
181
185
DefaultValueTagName : "envDefault" ,
182
186
Environment : toMap (os .Environ ()),
183
187
FuncMap : defaultTypeParsers (),
@@ -190,6 +194,9 @@ func customOptions(opt Options) Options {
190
194
if opt .TagName == "" {
191
195
opt .TagName = defOpts .TagName
192
196
}
197
+ if opt .PrefixTagName == "" {
198
+ opt .PrefixTagName = defOpts .PrefixTagName
199
+ }
193
200
if opt .DefaultValueTagName == "" {
194
201
opt .DefaultValueTagName = defOpts .DefaultValueTagName
195
202
}
@@ -214,6 +221,7 @@ func optionsWithSliceEnvPrefix(opts Options, index int) Options {
214
221
return Options {
215
222
Environment : opts .Environment ,
216
223
TagName : opts .TagName ,
224
+ PrefixTagName : opts .PrefixTagName ,
217
225
DefaultValueTagName : opts .DefaultValueTagName ,
218
226
RequiredIfNoDef : opts .RequiredIfNoDef ,
219
227
OnSet : opts .OnSet ,
@@ -228,10 +236,11 @@ func optionsWithEnvPrefix(field reflect.StructField, opts Options) Options {
228
236
return Options {
229
237
Environment : opts .Environment ,
230
238
TagName : opts .TagName ,
239
+ PrefixTagName : opts .PrefixTagName ,
231
240
DefaultValueTagName : opts .DefaultValueTagName ,
232
241
RequiredIfNoDef : opts .RequiredIfNoDef ,
233
242
OnSet : opts .OnSet ,
234
- Prefix : opts .Prefix + field .Tag .Get ("envPrefix" ),
243
+ Prefix : opts .Prefix + field .Tag .Get (opts . PrefixTagName ),
235
244
UseFieldNameByDefault : opts .UseFieldNameByDefault ,
236
245
FuncMap : opts .FuncMap ,
237
246
rawEnvVars : opts .rawEnvVars ,
0 commit comments