lookup returns the unique *setting value for the given name.
(name string)
| 149 | |
| 150 | // lookup returns the unique *setting value for the given name. |
| 151 | func lookup(name string) *setting { |
| 152 | if v, ok := cache.Load(name); ok { |
| 153 | return v.(*setting) |
| 154 | } |
| 155 | s := new(setting) |
| 156 | s.info = godebugs.Lookup(name) |
| 157 | s.value.Store(&empty) |
| 158 | if v, loaded := cache.LoadOrStore(name, s); loaded { |
| 159 | // Lost race: someone else created it. Use theirs. |
| 160 | return v.(*setting) |
| 161 | } |
| 162 | |
| 163 | return s |
| 164 | } |
| 165 | |
| 166 | func newIncNonDefault(name string) func() { |
| 167 | s := New(name) |