On Oct 25, 2017, at 8:07 PM, John Rose <john.r.r...@oracle.com> wrote: > > On Oct 25, 2017, at 3:33 PM, Remi Forax <fo...@univ-mlv.fr > <mailto:fo...@univ-mlv.fr>> wrote: >> >> getClasses() throws an exception but getAnnotations() skips unavailable >> annotations. >> >> that said, i'm not against throwing in this case. > > I'm not against throwing either, but I think scrubbing (like annotations) > is a little better, because it is more robust about retaining partial results. > Partial results are important if you are just asking about one or two > classes and don't care about their other nestmates.
And even if H.getNestMembers() throws because of some missing N1, we have to be careful to allow N2.getNestHost() to return H, if we can validate that N2 points to H and vice versa. We don't want the validated relation between N2 and H to be collateral damage to a failure of N1. (If H goes missing there is nothing we can do with N1 and N2, except to assign each to its own 1-nest. Which is OK with me.)