visitMember method 
    
    
    
  Implementation
  @override
Eval visitMember(MemberExpression expr, CallVisitorContext context) {
  var receiver = expr.object.accept(this, context);
  var type = expr.object.getType<ObjectType>();
  var property =  expr.property.name;
  var descriptor = type.typeDescriptor.getProperty<AbstractPropertyDescriptor>(property);
  return descriptor.isField() ?
    EvalMember(receiver: receiver, field: descriptor as FieldDescriptor) :
    EvalMethod(receiver: receiver, method: descriptor as MethodDescriptor);
}