(tf reflect.StructField)
| 56 | } |
| 57 | |
| 58 | func name(tf reflect.StructField) (n string, ok bool, omitempty bool) { |
| 59 | if !tf.IsExported() { |
| 60 | return "", false, false |
| 61 | } |
| 62 | name := tf.Name |
| 63 | |
| 64 | propName, ok := tf.Tag.Lookup("properties") |
| 65 | if !ok { |
| 66 | return name, true, false |
| 67 | } |
| 68 | if propName == "-" { |
| 69 | return name, false, false |
| 70 | } |
| 71 | name = propName |
| 72 | |
| 73 | i := strings.Index(name, ",omitempty") |
| 74 | if i == -1 { |
| 75 | return name, true, false |
| 76 | } |
| 77 | |
| 78 | name = name[:i] |
| 79 | if name == "" { |
| 80 | name = tf.Name |
| 81 | } |
| 82 | |
| 83 | return name, true, true |
| 84 | } |
| 85 | |
| 86 | func writeString(w io.Writer, str string) error { |
| 87 | _, err := w.Write(unsafe.Slice(unsafe.StringData(str), len(str))) |
no test coverage detected