readValues static method

Map<String?, dynamic> readValues(
  1. List<Binding>? bindings,
  2. dynamic data
)

Implementation

static Map<String?, dynamic> readValues(List<Binding>? bindings, dynamic data)
{
  Map<String?, dynamic> values = Map<String?, dynamic>();
  List<String?> processed = [];
  if (bindings != null)
  for (Binding binding in bindings)
  {
    // fully qualified data binding name (datasource.data.field1.field2.field3...fieldn)
    if ((binding.source == 'data'))
    {
      String? signature = binding.property + (binding.dotnotation?.signature != null ? ".${binding.dotnotation!.signature}" : "");
      if (!processed.contains(binding.signature))
      {
        processed.add(binding.signature);
        var value = readValue(data,signature) ?? "";
        values[binding.signature] = value;
      }
    }
  }
  return values;
}