void (@NotNull GrClassInitializer initializer) { final GrTypeDefinition clazz = (GrTypeDefinition)initializer.getContainingClass(); if (clazz == null) return; final boolean isStatic = initializer.isStatic(); final GrClassInitializer[] initializers = clazz.getInitializers(); final List<GrField> fields = getFinalFields(clazz); Set<GrVariable> initializedFields = new HashSet<>(); appendFieldInitializedInDeclaration(isStatic, fields, initializedFields); appendFieldsInitializedInClassInitializer(initializers, initializer, isStatic, fields, initializedFields); final GroovyControlFlow flow = buildFlowForField(initializer.getBlock()); final Set<GrVariable> variables = buildVarSet(fields, isStatic); highlightInvalidWriteAccess(flow, variables, initializedFields); }