diff --git a/deprecate/stuff.go b/deprecate/stuff.go
new file mode 100644
index 0000000..e7da640
--- /dev/null
+++ b/deprecate/stuff.go
@@ -0,0 +1,37 @@
+
+// ======================== newMapToXmlIndent
+
+func (mv Map) MarshalXml(rootTag ...string) ([]byte, error) {
+ m := map[string]interface{}(mv)
+ var err error
+ // s := new(string)
+ // b := new(strings.Builder)
+ b := new(bytes.Buffer)
+ p := new(pretty) // just a stub
+
+ if len(m) == 1 && len(rootTag) == 0 {
+ for key, value := range m {
+ // if it an array, see if all values are map[string]interface{}
+ // we force a new root tag if we'll end up with no key:value in the list
+ // so: key:[string_val, bool:true] --> string_valtrue
+ switch value.(type) {
+ case []interface{}:
+ for _, v := range value.([]interface{}) {
+ switch v.(type) {
+ case map[string]interface{}: // noop
+ default: // anything else
+ err = marshalMapToXmlIndent(false, b, DefaultRootTag, m, p)
+ goto done
+ }
+ }
+ }
+ err = marshalMapToXmlIndent(false, b, key, value, p)
+ }
+ } else if len(rootTag) == 1 {
+ err = marshalMapToXmlIndent(false, b, rootTag[0], m, p)
+ } else {
+ err = marshalMapToXmlIndent(false, b, DefaultRootTag, m, p)
+ }
+done:
+ return b.Bytes(), err
+}
diff --git a/xml.go b/xml.go
index 7678ddb..258f538 100644
--- a/xml.go
+++ b/xml.go
@@ -1324,39 +1324,3 @@ func (e elemList) Less(i, j int) bool {
return e[i][0].(string) <= e[j][0].(string)
}
-// ======================== newMapToXmlIndent
-
-func (mv Map) MarshalXml(rootTag ...string) ([]byte, error) {
- m := map[string]interface{}(mv)
- var err error
- // s := new(string)
- // b := new(strings.Builder)
- b := new(bytes.Buffer)
- p := new(pretty) // just a stub
-
- if len(m) == 1 && len(rootTag) == 0 {
- for key, value := range m {
- // if it an array, see if all values are map[string]interface{}
- // we force a new root tag if we'll end up with no key:value in the list
- // so: key:[string_val, bool:true] --> string_valtrue
- switch value.(type) {
- case []interface{}:
- for _, v := range value.([]interface{}) {
- switch v.(type) {
- case map[string]interface{}: // noop
- default: // anything else
- err = marshalMapToXmlIndent(false, b, DefaultRootTag, m, p)
- goto done
- }
- }
- }
- err = marshalMapToXmlIndent(false, b, key, value, p)
- }
- } else if len(rootTag) == 1 {
- err = marshalMapToXmlIndent(false, b, rootTag[0], m, p)
- } else {
- err = marshalMapToXmlIndent(false, b, DefaultRootTag, m, p)
- }
-done:
- return b.Bytes(), err
-}