innerClassNodes.add(new InnerClassNode(toInternalName(p.name), toInternalName(enclosingClass.name), p.innerName, accessInInner)); } else {// anonymous Innerclass innerClassNodes.add(new InnerClassNode(toInternalName(p.name), null, null, accessInInner));
((InnerClassNode) cf.innerClasses.get(i)).accept(cv);
for (Clz inner : clz.inners) { if (inner.innerName == null) {// anonymous Innerclass innerClassNodes.add(new InnerClassNode(toInternalName(inner.name), null, null, clearInnerAccess(inner.access))); } else {// non-anonymous Innerclass innerClassNodes.add(new InnerClassNode(toInternalName(inner.name), toInternalName(className), inner.innerName, clearInnerAccess(inner.access)));
icn.outerName = null; icn.accept(cv);
@Override public void visitInnerClass( final String name, final String outerName, final String innerName, final int access) { InnerClassNode innerClass = new InnerClassNode(name, outerName, innerName, access); innerClasses.add(innerClass); }
innerClasses.get(i).accept(cv);
@Override public void visitInnerClass(final String name, final String outerName, final String innerName, final int access) { InnerClassNode icn = new InnerClassNode(name, outerName, innerName, access); innerClasses.add(icn); }
innerClasses.get(i).accept(classVisitor);
@Override public void visitInnerClass(String name, String outerName, String innerName, int access) { System.err.println("Inner Class: " + name + " inner name: " + innerName + " outer: " + outerName); InnerClassNode n = new InnerClassNode(name, outerName, innerName, access); cv.visitInnerClass(name, outerName, innerName, access); }
private void addInnerClassLinks() { String ownInternalName = thisClassType().getInternalName(); // parent if (parentClassType() != null) { String parentInternalName = parentClassType().getInternalName(); // assume (parentInternalName + "$") is the prefix of ownInternalName String suffix = ownInternalName.substring(parentInternalName.length() + 1); classNode.innerClasses.add(new InnerClassNode( ownInternalName, parentInternalName, suffix, ACC_PUBLIC + ACC_STATIC)); } List<FunctionId> nestedIds = new ArrayList<>(deps.nestedRefs()); Collections.sort(nestedIds, FunctionId.LEXICOGRAPHIC_COMPARATOR); for (FunctionId childId : nestedIds) { String childClassName = childId.toClassName(classNameTranslator); String childInternalName = ASMUtils.typeForClassName(childClassName).getInternalName(); // assume (ownInternalName + "$") is the prefix of childName String suffix = childInternalName.substring(ownInternalName.length() + 1); classNode.innerClasses.add(new InnerClassNode( childInternalName, ownInternalName, suffix, ACC_PUBLIC + ACC_STATIC)); } }
List<InnerClassNode> buildInnerClasses(IList iList) { ArrayList<InnerClassNode> al = new ArrayList<InnerClassNode>(); for (IValue v : iList) { al.add(new InnerClassNode(((IString)((IConstructor)v).get(0)).getValue(), emptyIsNull(((IString)((IConstructor)v).get(1)).getValue()), emptyIsNull(((IString)((IConstructor)v).get(2)).getValue()), ((IInteger)((IConstructor)v).get(3)).intValue())); } return al; }