MCPcopy Index your code
hub / github.com/php/frankenphp / UnmarshalCaddyfile

Method UnmarshalCaddyfile

caddy/module.go:259–332  ·  view source on GitHub ↗

UnmarshalCaddyfile implements caddyfile.Unmarshaler.

(d *caddyfile.Dispenser)

Source from the content-addressed store, hash-verified

257
258// UnmarshalCaddyfile implements caddyfile.Unmarshaler.
259func (f *FrankenPHPModule) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
260 for d.Next() {
261 for d.NextBlock(0) {
262 switch d.Val() {
263 case "root":
264 if !d.NextArg() {
265 return d.ArgErr()
266 }
267 f.Root = d.Val()
268
269 case "split":
270 f.SplitPath = d.RemainingArgs()
271 if len(f.SplitPath) == 0 {
272 return d.ArgErr()
273 }
274
275 case "env":
276 args := d.RemainingArgs()
277 if len(args) != 2 {
278 return d.ArgErr()
279 }
280 if f.Env == nil {
281 f.Env = make(map[string]string)
282 f.preparedEnv = make(frankenphp.PreparedEnv)
283 }
284 f.Env[args[0]] = args[1]
285 f.preparedEnv[args[0]+"\x00"] = args[1]
286
287 case "resolve_root_symlink":
288 if !d.NextArg() {
289 continue
290 }
291 v, err := strconv.ParseBool(d.Val())
292 if err != nil {
293 return err
294 }
295 if d.NextArg() {
296 return d.ArgErr()
297 }
298 f.ResolveRootSymlink = &v
299
300 case "worker":
301 wc, err := unmarshalWorker(d)
302 if err != nil {
303 return err
304 }
305
306 f.Workers = append(f.Workers, wc)
307
308 case "hot_reload":
309 if err := f.unmarshalHotReload(d); err != nil {
310 return err
311 }
312
313 default:
314 return wrongSubDirectiveError("php or php_server", "hot_reload, name, root, split, env, resolve_root_symlink, worker", d.Val())
315 }
316 }

Calls 3

unmarshalHotReloadMethod · 0.95
unmarshalWorkerFunction · 0.85
wrongSubDirectiveErrorFunction · 0.85