Home / Function/ configDefault() — fiber Function Reference

configDefault() — fiber Function Reference

Architecture documentation for the configDefault() function in config.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  7cdd7dc9_467b_6952_2a59_aa1b515e6ff3["configDefault()"]
  4385628f_9f64_45c8_f2f6_b3f8531ce1ae["config.go"]
  7cdd7dc9_467b_6952_2a59_aa1b515e6ff3 -->|defined in| 4385628f_9f64_45c8_f2f6_b3f8531ce1ae
  62ff796e_7742_610d_69b8_7dff2e9f6ac9["int()"]
  7cdd7dc9_467b_6952_2a59_aa1b515e6ff3 -->|calls| 62ff796e_7742_610d_69b8_7dff2e9f6ac9
  style 7cdd7dc9_467b_6952_2a59_aa1b515e6ff3 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/limiter/config.go lines 107–146

func configDefault(config ...Config) Config {
	// Use default config if nothing provided
	var cfg Config
	if len(config) < 1 {
		cfg = ConfigDefault
	} else {
		cfg = config[0]
	}

	// Set default values
	if cfg.Next == nil {
		cfg.Next = ConfigDefault.Next
	}
	if cfg.Max <= 0 {
		cfg.Max = ConfigDefault.Max
	}
	if int(cfg.Expiration.Seconds()) <= 0 {
		cfg.Expiration = ConfigDefault.Expiration
	}
	if cfg.KeyGenerator == nil {
		cfg.KeyGenerator = ConfigDefault.KeyGenerator
	}
	if cfg.LimitReached == nil {
		cfg.LimitReached = ConfigDefault.LimitReached
	}
	if cfg.LimiterMiddleware == nil {
		cfg.LimiterMiddleware = ConfigDefault.LimiterMiddleware
	}
	if cfg.MaxFunc == nil {
		cfg.MaxFunc = func(_ fiber.Ctx) int {
			return cfg.Max
		}
	}
	if cfg.ExpirationFunc == nil {
		cfg.ExpirationFunc = func(_ fiber.Ctx) time.Duration {
			return cfg.Expiration
		}
	}
	return cfg
}

Subdomains

Calls

Frequently Asked Questions

What does configDefault() do?
configDefault() is a function in the fiber codebase, defined in middleware/limiter/config.go.
Where is configDefault() defined?
configDefault() is defined in middleware/limiter/config.go at line 107.
What does configDefault() call?
configDefault() calls 1 function(s): int.

Analyze Your Own Codebase

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

Try Supermodel Free