merge goyaml-rune-changes
diff --git a/encode.go b/encode.go
index a06c4d0..c4aee87 100644
--- a/encode.go
+++ b/encode.go
@@ -250,8 +250,7 @@
e.emitScalar("null", "", "", C.YAML_PLAIN_SCALAR_STYLE)
}
-func (e *encoder) emitScalar(value, anchor, tag string,
- style C.yaml_scalar_style_t) {
+func (e *encoder) emitScalar(value, anchor, tag string, style C.yaml_scalar_style_t) {
var canchor, ctag, cvalue *C.yaml_char_t
var cimplicit C.int
var free func()
diff --git a/goyaml.go b/goyaml.go
index 4bf3c43..518ddeb 100644
--- a/goyaml.go
+++ b/goyaml.go
@@ -256,14 +256,12 @@
switch v.Kind() {
case reflect.String:
return len(v.String()) == 0
- case reflect.Interface:
+ case reflect.Interface, reflect.Ptr:
return v.IsNil()
case reflect.Slice:
return v.Len() == 0
case reflect.Map:
return v.Len() == 0
- case reflect.Ptr:
- return v.IsNil()
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
return v.Int() == 0
case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: