Home / Function/ Bind() — gin Function Reference

Bind() — gin Function Reference

Architecture documentation for the Bind() function in utils.go from the gin codebase.

Entity Profile

Dependency Diagram

graph TD
  c3ad311d_78df_8d67_c6b1_77e5b988b008["Bind()"]
  5bca33d6_0728_cd3b_708c_a59f93f5d952["utils.go"]
  c3ad311d_78df_8d67_c6b1_77e5b988b008 -->|defined in| 5bca33d6_0728_cd3b_708c_a59f93f5d952
  style c3ad311d_78df_8d67_c6b1_77e5b988b008 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

utils.go lines 29–44

func Bind(val any) HandlerFunc {
	value := reflect.ValueOf(val)
	if value.Kind() == reflect.Ptr {
		panic(`Bind struct can not be a pointer. Example:
	Use: gin.Bind(Struct{}) instead of gin.Bind(&Struct{})
`)
	}
	typ := value.Type()

	return func(c *Context) {
		obj := reflect.New(typ).Interface()
		if c.Bind(obj) == nil {
			c.Set(BindKey, obj)
		}
	}
}

Domain

Subdomains

Defined In

Frequently Asked Questions

What does Bind() do?
Bind() is a function in the gin codebase, defined in utils.go.
Where is Bind() defined?
Bind() is defined in utils.go at line 29.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free