summaryrefslogtreecommitdiff
path: root/load.go
diff options
context:
space:
mode:
Diffstat (limited to 'load.go')
-rw-r--r--load.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/load.go b/load.go
index caafcde..16e6170 100644
--- a/load.go
+++ b/load.go
@@ -70,6 +70,23 @@ func ConfigLoad(pb proto.Message, argname string, protoname string) error {
return ErrMarshal
}
+func Load(pb proto.Message) error {
+ fullname, ok := GetFilename(pb)
+ if !ok {
+ return ErrProtoFilename
+ }
+ if strings.HasSuffix(fullname, ".text") {
+ return loadTEXT(pb, fullname)
+ }
+ if strings.HasSuffix(fullname, ".json") {
+ return loadJSON(pb, fullname)
+ }
+ if strings.HasSuffix(fullname, ".pb") {
+ return loadPB(pb, fullname)
+ }
+ return log.Errorf("unknown filetype %s", fullname)
+}
+
func LoadFile(pb proto.Message, fullname string) error {
if strings.HasSuffix(fullname, ".text") {
return loadTEXT(pb, fullname)