fromMap<B extends Object> static method

B fromMap<B extends Object>(
  1. Map<String, dynamic> source, {
  2. List<String> excludes = const [],
})

Implementation

static B fromMap<B extends Object>(Map<String, dynamic> source,
    {List<String> excludes = const []}) {
  ClassMirror cm = reflectClass(B);

  Map<Symbol, dynamic> args = {};

  for (var i in source.entries) {
    if (!(excludes.indexWhere((field) => field == i.key) > -1)) {
      args[Symbol(i.key)] = i.value;
    }
  }

  InstanceMirror im = cm.newInstance(Symbol(''), [], args);
  var o = im.reflectee;

  return o;
}