private void processSettingsBlocksFromCollector(PartSubTypeAndAnnotationCollector collector) { if (collector.getSettingsBlocks().size() > 0) { AnnotationLeftHandScope scope = new AnnotationLeftHandScope( new RecordScope(NullScope.INSTANCE, recordBinding), recordBinding, recordBinding, recordBinding); if (!collector.isFoundSubTypeInSettingsBlock() && partStereotype != null) { scope = new AnnotationLeftHandScope( scope, partStereotype, (StereotypeType) partStereotype.getEClass(), partStereotype); } SettingsBlockAnnotationBindingsCompletor blockCompletor = new SettingsBlockAnnotationBindingsCompletor( currentScope, recordBinding, scope, dependencyRequestor, problemRequestor, compilerOptions); for (SettingsBlock block : collector.getSettingsBlocks()) { block.accept(blockCompletor); } } }
protected void processSubType(PartSubTypeAndAnnotationCollector collector) { partStereotype = collector.getStereotype(); setDefaultSuperType(partStereotype); }