优化结构
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
package config
|
||||
|
||||
// Clone returns a deep copy of a configuration snapshot. The copy helpers are
|
||||
// intentionally kept in the config package so data/integration code does not
|
||||
// need protobuf cloning or storage-specific serializers.
|
||||
func Clone(value *Config) *Config { return cloneConfig(value) }
|
||||
|
||||
func CloneData(value *Data) *Data {
|
||||
if value == nil {
|
||||
return nil
|
||||
}
|
||||
return cloneConfig(&Config{Data: value}).Data
|
||||
}
|
||||
|
||||
func CloneAdmin(value *Admin) *Admin {
|
||||
if value == nil {
|
||||
return nil
|
||||
}
|
||||
return cloneConfig(&Config{Admin: value}).Admin
|
||||
}
|
||||
|
||||
func CloneDatabase(value *Database) *Database {
|
||||
if value == nil {
|
||||
return nil
|
||||
}
|
||||
return cloneConfig(&Config{Data: &Data{Database: value}}).Data.Database
|
||||
}
|
||||
|
||||
func CloneStorage(value *Storage) *Storage {
|
||||
if value == nil {
|
||||
return nil
|
||||
}
|
||||
return cloneConfig(&Config{Admin: &Admin{Storage: value}}).Admin.Storage
|
||||
}
|
||||
|
||||
func CloneEmail(value *Email) *Email {
|
||||
if value == nil {
|
||||
return nil
|
||||
}
|
||||
return cloneConfig(&Config{Admin: &Admin{Email: value}}).Admin.Email
|
||||
}
|
||||
Reference in New Issue
Block a user