allow specifying stop conditions in modelfile

This commit is contained in:
Bruce MacDonald
2023-07-27 17:02:14 -04:00
parent 822a0e36eb
commit 184ad8f057
3 changed files with 11 additions and 2 deletions

View File

@@ -14,6 +14,7 @@ import (
"path"
"path/filepath"
"reflect"
"regexp"
"strconv"
"strings"
"text/template"
@@ -472,6 +473,14 @@ func paramsToReader(params map[string]string) (io.ReadSeeker, error) {
field.SetBool(boolVal)
case reflect.String:
field.SetString(val)
case reflect.Slice:
re := regexp.MustCompile(`"(.*?)"`) // matches everything enclosed in quotes
vals := re.FindAllStringSubmatch(val, -1)
var sliceVal []string
for _, v := range vals {
sliceVal = append(sliceVal, v[1]) // v[1] is the captured group, v[0] is the entire match
}
field.Set(reflect.ValueOf(sliceVal))
default:
return nil, fmt.Errorf("unknown type %s for %s", field.Kind(), key)
}