NewNotNull creates and configures a new NotNull filter.
(cfg baker.FilterParams)
| 29 | |
| 30 | // NewNotNull creates and configures a new NotNull filter. |
| 31 | func NewNotNull(cfg baker.FilterParams) (baker.Filter, error) { |
| 32 | dcfg := cfg.DecodedConfig.(*NotNullConfig) |
| 33 | |
| 34 | f := &NotNull{cfg: dcfg} |
| 35 | for _, field := range dcfg.Fields { |
| 36 | if val, ok := cfg.FieldByName(field); ok { |
| 37 | f.fields = append(f.fields, val) |
| 38 | } else { |
| 39 | return nil, fmt.Errorf("unknown field %q", field) |
| 40 | } |
| 41 | } |
| 42 | return f, nil |
| 43 | } |
| 44 | |
| 45 | // Stats implements baker.Filter. |
| 46 | func (v *NotNull) Stats() baker.FilterStats { |