Source file src/pkg/strconv/atob.go
1 // Copyright 2009 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4
5 package strconv
6
7 // ParseBool returns the boolean value represented by the string.
8 // It accepts 1, t, T, TRUE, true, True, 0, f, F, FALSE, false, False.
9 // Any other value returns an error.
10 func ParseBool(str string) (value bool, err error) {
11 switch str {
12 case "1", "t", "T", "true", "TRUE", "True":
13 return true, nil
14 case "0", "f", "F", "false", "FALSE", "False":
15 return false, nil
16 }
17 return false, syntaxError("ParseBool", str)
18 }
19
20 // FormatBool returns "true" or "false" according to the value of b
21 func FormatBool(b bool) string {
22 if b {
23 return "true"
24 }
25 return "false"
26 }
27
28 // AppendBool appends "true" or "false", according to the value of b,
29 // to dst and returns the extended buffer.
30 func AppendBool(dst []byte, b bool) []byte {
31 if b {
32 return append(dst, "true"...)
33 }
34 return append(dst, "false"...)
35 }