move resolve into package

This commit is contained in:
Bel LaPointe
2021-02-21 12:39:15 -06:00
parent ff8b908ee7
commit 7f2d451ca4
15 changed files with 205 additions and 175 deletions

51
db.go
View File

@@ -3,8 +3,6 @@ package storage
import (
"fmt"
"io"
"strconv"
"strings"
)
type DBStream interface {
@@ -60,52 +58,3 @@ func New(key Type, params ...string) (db DB, err error) {
}
return
}
func resolveNamespace(ns []string) string {
namespace := DefaultNamespace
if len(ns) > 0 {
segments := []string{}
for i := range ns {
if ns[i] != "" {
segments = append(segments, ns[i])
}
}
namespace = strings.Join(segments, ".")
}
return namespace
}
func resolveLimits(input []string) []string {
return []string{
resolveLimitsStart(input),
resolveLimitsStop(input),
resolveLimitsLimit(input),
resolveLimitsAscending(input),
}
}
func resolveLimitsStart(input []string) string {
if len(input) > 0 {
return input[0]
}
return " "
}
func resolveLimitsStop(input []string) string {
if len(input) > 1 {
return input[1]
}
return "}}}}}}"
}
func resolveLimitsLimit(input []string) string {
if len(input) > 2 {
v, _ := strconv.Atoi(input[2])
return strconv.Itoa(v)
}
return "0"
}
func resolveLimitsAscending(input []string) string {
return strconv.FormatBool(len(input) < 4 || input[3] != "-")
}