MCPcopy Create free account
hub / github.com/araddon/qlbridge / HelperString

Function HelperString

rel/sql.go:2077–2114  ·  view source on GitHub ↗

HelperString Convert a Helper into key/value string

(w expr.DialectWriter, jh u.JsonHelper)

Source from the content-addressed store, hash-verified

2075
2076// HelperString Convert a Helper into key/value string
2077func HelperString(w expr.DialectWriter, jh u.JsonHelper) {
2078
2079 // isJson := false
2080 // for k, v := range jh {
2081 // switch lvt := lv.(type) {
2082 // case int, int64, int32, string, bool, float64:
2083 // //
2084 // case []string, []int, []int32, []int64, []float64:
2085 // //
2086 // case u.JsonHelper, map[string]interface{}:
2087 // isJson = true
2088 // break
2089 // default:
2090 // u.Warnf("unhandled type comparison: %T", lv)
2091 // }
2092 // }
2093 pos := 0
2094 keys := jh.Keys()
2095 sort.Strings(keys)
2096
2097 for _, k := range keys {
2098 val := jh[k]
2099 if pos > 0 {
2100 io.WriteString(w, ", ")
2101 }
2102 w.WriteIdentity(k)
2103 io.WriteString(w, " = ")
2104 switch v := val.(type) {
2105 case string:
2106 w.WriteLiteral(v)
2107 case int, int64, int32, bool, float64:
2108 io.WriteString(w, fmt.Sprintf("%v", v))
2109 default:
2110 u.Warnf("unhandled type comparison: %T", val)
2111 }
2112 pos++
2113 }
2114}

Callers 2

WriteDialectMethod · 0.85
WriteDialectMethod · 0.85

Calls 3

WriteIdentityMethod · 0.65
WriteLiteralMethod · 0.65
StringsMethod · 0.45

Tested by

no test coverage detected