CopyContextToFiberContext() — fiber Function Reference
Architecture documentation for the CopyContextToFiberContext() function in adaptor.go from the fiber codebase.
Entity Profile
Dependency Diagram
graph TD 396b545e_ec69_3ad2_77c3_848b4e5253dd["CopyContextToFiberContext()"] 69780622_2588_e0fa_ab5a_13dcfd3559e7["adaptor.go"] 396b545e_ec69_3ad2_77c3_848b4e5253dd -->|defined in| 69780622_2588_e0fa_ab5a_13dcfd3559e7 519ca005_b5e3_d33c_7eee_42ac83141d1c["HTTPMiddleware()"] 519ca005_b5e3_d33c_7eee_42ac83141d1c -->|calls| 396b545e_ec69_3ad2_77c3_848b4e5253dd style 396b545e_ec69_3ad2_77c3_848b4e5253dd fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
middleware/adaptor/adaptor.go lines 97–151
func CopyContextToFiberContext(src any, requestContext *fasthttp.RequestCtx) {
v := reflect.ValueOf(src)
if !v.IsValid() {
return
}
// Deref pointer chains
for v.Kind() == reflect.Ptr {
if v.IsNil() {
return
}
v = v.Elem()
}
t := v.Type()
if t.Kind() != reflect.Struct {
return
}
// Ensure addressable for safe unsafe-access of unexported fields
if !v.CanAddr() {
tmp := reflect.New(t)
tmp.Elem().Set(v)
v = tmp.Elem()
}
contextValues := v
contextKeys := t
var lastKey any
for i := 0; i < contextValues.NumField(); i++ {
reflectValue := contextValues.Field(i)
reflectField := contextKeys.Field(i)
if reflectField.Name == "noCopy" {
break
}
// Avoid unsafe access for unexported fields; use safe reflection where possible
if !reflectValue.CanInterface() {
/* #nosec */
reflectValue = reflect.NewAt(reflectValue.Type(), unsafe.Pointer(reflectValue.UnsafeAddr())).Elem()
}
switch reflectField.Name {
case "Context":
CopyContextToFiberContext(reflectValue.Interface(), requestContext)
case "key":
lastKey = reflectValue.Interface()
case "val":
if lastKey != nil {
requestContext.SetUserValue(lastKey, reflectValue.Interface())
lastKey = nil
}
default:
continue
}
}
}
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does CopyContextToFiberContext() do?
CopyContextToFiberContext() is a function in the fiber codebase, defined in middleware/adaptor/adaptor.go.
Where is CopyContextToFiberContext() defined?
CopyContextToFiberContext() is defined in middleware/adaptor/adaptor.go at line 97.
What calls CopyContextToFiberContext()?
CopyContextToFiberContext() is called by 1 function(s): HTTPMiddleware.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free