]> 127.0.0.1 Git - part/.git/commitdiff
1 v0.28.20240418162752
authorqydysky <qydysky@foxmail.com>
Thu, 18 Apr 2024 16:23:05 +0000 (16:23 +0000)
committerqydysky <qydysky@foxmail.com>
Thu, 18 Apr 2024 16:23:05 +0000 (16:23 +0000)
component2/comp.go

index 833fa71412768051b79aec81650e314b4e9903a6..93d632dee6d74d32774fcc3f47c5f51af00c44f5 100644 (file)
@@ -33,11 +33,12 @@ func Register[TargetInterface any](pkgId string, _interface TargetInterface) err
        return nil
 }
 
-func Get[TargetInterface any](pkgId string, defaultInterface ...TargetInterface) (_interface TargetInterface) {
+func Get[TargetInterface any](pkgId string, init ...func(TargetInterface) TargetInterface) (_interface TargetInterface) {
        if tmp, ok := pkgInterfaceMap[pkgId].(TargetInterface); ok {
+               for i := 0; i < len(init); i++ {
+                       tmp = init[i](tmp)
+               }
                return tmp
-       } else if len(defaultInterface) > 0 {
-               return defaultInterface[0]
        } else {
                panic(ErrGet)
        }