instanceMemberGet method

  1. @override
dynamic instanceMemberGet(
  1. dynamic instance,
  2. String id, {
  3. bool ignoreUndefined = false,
})
override

Default HTExternalClass constructor. Fetch a instance member of the Dart class by the id, in the form of

object.key

Implementation

@override
dynamic instanceMemberGet(dynamic instance, String id,
    {bool ignoreUndefined = false}) {
  switch (id) {
    case 'toString':
      return ({object, positionalArgs, namedArgs}) => object.toString();
    case 'length':
      return instance.length;
    case 'isEmpty':
      return instance.isEmpty;
    case 'isNotEmpty':
      return instance.isNotEmpty;
    case 'iterator':
      return instance.keys.iterator;
    case 'keys':
      return instance.keys;
    case 'values':
      return instance.values;
    case 'containsKey':
      return ({object, positionalArgs, namedArgs}) =>
          object.containsKey(positionalArgs.first);
    case 'containsValue':
      return ({object, positionalArgs, namedArgs}) =>
          object.containsValue(positionalArgs.first);
    case 'addAll':
      return ({object, positionalArgs, namedArgs}) =>
          object.addAll(positionalArgs.first);
    case 'clear':
      return ({object, positionalArgs, namedArgs}) => object.clear();
    case 'remove':
      return ({object, positionalArgs, namedArgs}) =>
          object.remove(positionalArgs.first);
    default:
      return instance[id];
  }
}