CustomMembersHolder (@NotNull GroovyClassDescriptor descriptor) { CustomMembersHolder holder = myFactorTree.retrieve(descriptor); try { if (holder == null) { holder = addGdslMembers(descriptor); myFactorTree.cache(descriptor, holder); } return holder; } catch (ProcessCanceledException e) { throw e; } catch (Throwable e) { handleDslError(e); return CustomMembersHolder.EMPTY; } }