func bindField()

in pkg/genlib/generator_interface.go [101:134]


func bindField(cfg Config, field Field, fieldMap map[string]any, withReturn bool) error {
	// Check for hardcoded field value
	if len(field.Value) > 0 {
		if withReturn {
			return bindStaticWithReturn(field, field.Value, fieldMap)
		} else {
			return bindStatic(field, field.Value, fieldMap)
		}
	}

	// Check config override of value
	fieldCfg, _ := cfg.GetField(field.Name)
	if fieldCfg.Value != nil {
		if withReturn {
			return bindStaticWithReturn(field, fieldCfg.Value, fieldMap)
		} else {
			return bindStatic(field, fieldCfg.Value, fieldMap)
		}
	}

	if fieldCfg.Cardinality > 0 {
		if withReturn {
			return bindCardinalityWithReturn(cfg, field, fieldMap)
		} else {
			return bindCardinality(cfg, field, fieldMap)
		}
	}

	if withReturn {
		return bindByTypeWithReturn(cfg, field, fieldMap)
	} else {
		return bindByType(cfg, field, fieldMap)
	}
}