MCPcopy Create free account
hub / github.com/openclaw/gogcli / parseRangeWithMinimum

Function parseRangeWithMinimum

internal/docsedit/planner.go:126–148  ·  view source on GitHub ↗
(value string, minimum int64)

Source from the content-addressed store, hash-verified

124}
125
126func parseRangeWithMinimum(value string, minimum int64) (Range, bool, error) {
127 value = strings.TrimSpace(value)
128 if value == "" {
129 return Range{}, false, nil
130 }
131
132 parts := strings.Split(value, ":")
133 if len(parts) != 2 || strings.TrimSpace(parts[0]) == "" || strings.TrimSpace(parts[1]) == "" {
134 return Range{}, false, invalid("invalid --replace-range (expected START:END)")
135 }
136
137 start, err := strconv.ParseInt(strings.TrimSpace(parts[0]), 10, 64)
138 if err != nil || start < minimum {
139 return Range{}, false, invalid(fmt.Sprintf("invalid --replace-range start (must be >= %d)", minimum))
140 }
141
142 end, err := strconv.ParseInt(strings.TrimSpace(parts[1]), 10, 64)
143 if err != nil || end <= start {
144 return Range{}, false, invalid("invalid --replace-range end (must be greater than start)")
145 }
146
147 return Range{Start: start, End: end}, true, nil
148}
149
150func utf16Length(value string) int64 {
151 return int64(len(utf16.Encode([]rune(value))))

Callers 2

PlanUpdatePlacementFunction · 0.85
ParseRangeFunction · 0.85

Calls 1

invalidFunction · 0.70

Tested by

no test coverage detected