private void populateNamedInnerTypes() { final InnerClassesAttribute innerClasses = SourceAttribute.find(AttributeNames.InnerClasses, _attributes); if (innerClasses == null) { return; } final Collection<TypeDefinition> declaredTypes = _typeDefinition.getDeclaredTypesInternal(); for (final InnerClassEntry entry : innerClasses.getEntries()) { final String outerClassName = entry.getOuterClassName(); if (outerClassName == null) { continue; } final String innerClassName = entry.getInnerClassName(); if (Comparer.equals(_internalName, innerClassName)) { continue; } final TypeReference innerType = _parser.parseTypeDescriptor(innerClassName); final TypeDefinition resolvedInnerType = innerType.resolve(); if (resolvedInnerType != null && Comparer.equals(_internalName, outerClassName) && !declaredTypes.contains(resolvedInnerType)) { declaredTypes.add(resolvedInnerType); resolvedInnerType.setFlags(resolvedInnerType.getFlags() | entry.getAccessFlags()); } } }
private void populateNamedInnerTypes() { final InnerClassesAttribute innerClasses = SourceAttribute.find(AttributeNames.InnerClasses, _attributes); if (innerClasses == null) { return; } final Collection<TypeDefinition> declaredTypes = _typeDefinition.getDeclaredTypesInternal(); for (final InnerClassEntry entry : innerClasses.getEntries()) { final String outerClassName = entry.getOuterClassName(); if (outerClassName == null) { continue; } final String innerClassName = entry.getInnerClassName(); if (Comparer.equals(_internalName, innerClassName)) { continue; } final TypeReference innerType = _parser.parseTypeDescriptor(innerClassName); final TypeDefinition resolvedInnerType = innerType.resolve(); if (resolvedInnerType != null && Comparer.equals(_internalName, outerClassName) && !declaredTypes.contains(resolvedInnerType)) { declaredTypes.add(resolvedInnerType); resolvedInnerType.setFlags(resolvedInnerType.getFlags() | entry.getAccessFlags()); } } }
private void populateNamedInnerTypes() { final InnerClassesAttribute innerClasses = SourceAttribute.find(AttributeNames.InnerClasses, _attributes); if (innerClasses == null) { return; } final Collection<TypeDefinition> declaredTypes = _typeDefinition.getDeclaredTypesInternal(); for (final InnerClassEntry entry : innerClasses.getEntries()) { final String outerClassName = entry.getOuterClassName(); if (outerClassName == null) { continue; } final String innerClassName = entry.getInnerClassName(); if (Comparer.equals(_internalName, innerClassName)) { continue; } final TypeReference innerType = _parser.parseTypeDescriptor(innerClassName); final TypeDefinition resolvedInnerType = innerType.resolve(); if (resolvedInnerType != null && Comparer.equals(_internalName, outerClassName) && !declaredTypes.contains(resolvedInnerType)) { declaredTypes.add(resolvedInnerType); resolvedInnerType.setFlags(resolvedInnerType.getFlags() | entry.getAccessFlags()); } } }
(_typeDefinition.getFlags() & ~Flags.AccessFlags) | entry.getAccessFlags() );
(_typeDefinition.getFlags() & ~Flags.AccessFlags) | entry.getAccessFlags() );
(_typeDefinition.getFlags() & ~Flags.AccessFlags) | entry.getAccessFlags() );
private void writeInnerClassEntry(final ITextOutput output, final TypeDefinition type, final InnerClassEntry entry) { final String shortName = entry.getShortName(); final String innerClassName = entry.getInnerClassName(); final String outerClassName = entry.getOuterClassName(); final EnumSet<Flags.Flag> flagsSet = Flags.asFlagSet(entry.getAccessFlags(), Flags.Kind.InnerClass); for (final Flags.Flag flag : flagsSet) { output.writeKeyword(flag.toString()); output.write(' '); } final MetadataParser parser = new MetadataParser(type); if (tryWriteType(output, parser, shortName, innerClassName)) { output.writeDelimiter(" = "); } if (!tryWriteType(output, parser, innerClassName, innerClassName)) { output.writeError("?"); } if (!StringUtilities.isNullOrEmpty(outerClassName)) { output.writeDelimiter(" of "); if (!tryWriteType(output, parser, outerClassName, outerClassName)) { output.writeError("?"); } } output.writeLine(); }
private void writeInnerClassEntry(final ITextOutput output, final TypeDefinition type, final InnerClassEntry entry) { final String shortName = entry.getShortName(); final String innerClassName = entry.getInnerClassName(); final String outerClassName = entry.getOuterClassName(); final EnumSet<Flags.Flag> flagsSet = Flags.asFlagSet(entry.getAccessFlags(), Flags.Kind.InnerClass); for (final Flags.Flag flag : flagsSet) { output.writeKeyword(flag.toString()); output.write(' '); } final MetadataParser parser = new MetadataParser(type); if (tryWriteType(output, parser, shortName, innerClassName)) { output.writeDelimiter(" = "); } if (!tryWriteType(output, parser, innerClassName, innerClassName)) { output.writeError("?"); } if (!StringUtilities.isNullOrEmpty(outerClassName)) { output.writeDelimiter(" of "); if (!tryWriteType(output, parser, outerClassName, outerClassName)) { output.writeError("?"); } } output.writeLine(); }
private void writeInnerClassEntry(final ITextOutput output, final TypeDefinition type, final InnerClassEntry entry) { final String shortName = entry.getShortName(); final String innerClassName = entry.getInnerClassName(); final String outerClassName = entry.getOuterClassName(); final EnumSet<Flags.Flag> flagsSet = Flags.asFlagSet(entry.getAccessFlags(), Flags.Kind.InnerClass); for (final Flags.Flag flag : flagsSet) { output.writeKeyword(flag.toString()); output.write(' '); } final MetadataParser parser = new MetadataParser(type); if (tryWriteType(output, parser, shortName, innerClassName)) { output.writeDelimiter(" = "); } if (!tryWriteType(output, parser, innerClassName, innerClassName)) { output.writeError("?"); } if (!StringUtilities.isNullOrEmpty(outerClassName)) { output.writeDelimiter(" of "); if (!tryWriteType(output, parser, outerClassName, outerClassName)) { output.writeError("?"); } } output.writeLine(); }