toMapList static method

List<Map>? toMapList({
  1. XmlDocument? document,
  2. String? root,
})

Returns a map of every XmlElement from a XmlDocument given a String root

Implementation

static List<Map<dynamic, dynamic>>? toMapList(
    {XmlDocument? document, String? root}) {
  List<Map<dynamic, dynamic>>? list;
  if (document == null) return null;

  try {
    if (isNullOrEmpty(root)) root = getRootElement(document.rootElement);
    Iterable<XmlElement> nodes =
        document.findAllElements(root!, namespace: "*");
    for (XmlNode node in nodes) {
      Map<dynamic, dynamic> map = toMap(node: node as XmlElement);
      list ??= [];
      list.add(map);
    }
  } catch (e) {
    Log().exception(e,
        caller:
            'xml.dart => List<Map<dynamic,dynamic>> toMapList({XmlDocument document, String root})');
  }

  return list;
}