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);
}