aboutsummaryrefslogtreecommitdiffhomepage
path: root/modules.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules.go')
-rw-r--r--modules.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/modules.go b/modules.go
index ad03adf7b..3ca53841b 100644
--- a/modules.go
+++ b/modules.go
@@ -126,6 +126,17 @@ func GetModuleName(instance interface{}) string {
return name
}
+// GetModuleID returns a module's ID (the last element of its name)
+// from an instance of its value. If the value is not a module,
+// an empty string will be returned.
+func GetModuleID(instance interface{}) string {
+ var name string
+ if mod, ok := instance.(Module); ok {
+ name = mod.CaddyModule().ID()
+ }
+ return name
+}
+
// GetModules returns all modules in the given scope/namespace.
// For example, a scope of "foo" returns modules named "foo.bar",
// "foo.loo", but not "bar", "foo.bar.loo", etc. An empty scope