github.com/altipla-consulting/ravendb-go-client@v0.1.3/facet_value.go (about) 1 package ravendb 2 3 import ( 4 "fmt" 5 "strconv" 6 "strings" 7 ) 8 9 type FacetValue struct { 10 Range string 11 Count int 12 Sum *float64 13 Max *float64 14 Min *float64 15 Average *float64 16 } 17 18 func (v *FacetValue) SetSum(sum float64) { 19 v.Sum = &sum 20 } 21 22 func (v *FacetValue) SetMax(max float64) { 23 v.Max = &max 24 } 25 26 func (v *FacetValue) SetMin(min float64) { 27 v.Min = &min 28 } 29 30 func (v *FacetValue) SetAverage(average float64) { 31 v.Average = &average 32 } 33 34 func (v *FacetValue) String() string { 35 msg := v.Range + " - Count: " + strconv.Itoa(v.Count) + ", " 36 if v.Sum != nil { 37 msg += fmt.Sprintf("Sum: %f,", *v.Sum) 38 } 39 if v.Max != nil { 40 msg += fmt.Sprintf("Max: %f,", *v.Max) 41 } 42 if v.Min != nil { 43 msg += fmt.Sprintf("Min: %f,", *v.Min) 44 } 45 if v.Average != nil { 46 msg += fmt.Sprintf("Average: %f,", *v.Average) 47 } 48 49 // TODO: this makes no sense but is in Java code 50 return strings.TrimSuffix(msg, ";") 51 }