(r *bufio.Reader, oneLine bool, def string)
| 254 | var metaPrefixRegexp = regexp.MustCompile(`^\s*//\s*`) |
| 255 | |
| 256 | func readMetaValue(r *bufio.Reader, oneLine bool, def string) string { |
| 257 | sb := strings.Builder{} |
| 258 | for { |
| 259 | line, e := r.ReadBytes('\n') |
| 260 | if e != nil { |
| 261 | break |
| 262 | } |
| 263 | if !bytes.HasPrefix(line, []byte("//")) { |
| 264 | break |
| 265 | } |
| 266 | |
| 267 | temp := strings.TrimSpace(string(metaPrefixRegexp.ReplaceAll(line, []byte{}))) |
| 268 | sb.WriteString(temp) |
| 269 | |
| 270 | if oneLine { |
| 271 | break |
| 272 | } |
| 273 | |
| 274 | if len(bytes.TrimSpace(line)) == 0 { |
| 275 | break |
| 276 | } |
| 277 | |
| 278 | sb.WriteRune('\n') |
| 279 | } |
| 280 | if sb.Len() == 0 { |
| 281 | return def |
| 282 | } |
| 283 | return sb.String() |
| 284 | } |
no test coverage detected