MCPcopy Create free account
hub / github.com/deuill/go-php / engineSetHeader

Function engineSetHeader

engine/engine.go:164–190  ·  view source on GitHub ↗

export engineSetHeader

(ctx *C.struct__engine_context, operation C.uint, buffer unsafe.Pointer, length C.uint)

Source from the content-addressed store, hash-verified

162
163//export engineSetHeader
164func engineSetHeader(ctx *C.struct__engine_context, operation C.uint, buffer unsafe.Pointer, length C.uint) {
165 if engine == nil || engine.contexts[ctx] == nil {
166 return
167 }
168
169 header := (string)(C.GoBytes(buffer, C.int(length)))
170 split := strings.SplitN(header, ":", 2)
171
172 for i := range split {
173 split[i] = strings.TrimSpace(split[i])
174 }
175
176 switch operation {
177 case 0: // Replace header.
178 if len(split) == 2 && split[1] != "" {
179 engine.contexts[ctx].Header.Set(split[0], split[1])
180 }
181 case 1: // Append header.
182 if len(split) == 2 && split[1] != "" {
183 engine.contexts[ctx].Header.Add(split[0], split[1])
184 }
185 case 2: // Delete header.
186 if split[0] != "" {
187 engine.contexts[ctx].Header.Del(split[0])
188 }
189 }
190}
191
192//export engineReceiverNew
193func engineReceiverNew(rcvr *C.struct__engine_receiver, args unsafe.Pointer) C.int {

Callers 1

engine_header_handlerFunction · 0.85

Calls 1

SetMethod · 0.80

Tested by

no test coverage detected