final AccessorDetails getter = optGetter.get();
final AOption<AccessorDetails> optSetter = getSetterFor(name, getter.method);
if(optSetter.isDefined()) {
final AccessorDetails setter = optSetter.get();
return AOption.some((APropertyAccessor) new AMethodBasedPropertyAccessor(name, getter.method, setter.method, getter.isDeferred || setter.isDeferred, getter.tpe, getter.qualifier, setter.qualifier));
}
else {
return AOption.some((APropertyAccessor) new AMethodBasedPropertyAccessor(name, getter.method, null, getter.isDeferred, getter.tpe, getter.qualifier, AQualifier.NO_QUALIFIER));
}
}