protected override ValueReference GetMember(EvaluationContext ctx, object t, object co, string name) { TypeMirror type = (TypeMirror)t; while (type != null) { FieldInfoMirror field = type.GetField(name); if (field != null) { return(new FieldValueReference(ctx, field, co, type)); } PropertyInfoMirror prop = type.GetProperty(name); if (prop != null) { return(new PropertyValueReference(ctx, prop, co, type, null)); } type = type.BaseType; } return(null); }