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 (S.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;
}