private Map<String, VirtualField> buildFieldsMap() { Map<String, VirtualField> fields = new HashMap<>(); for (BuilderField builderField : getClassDef().getFields()) { String name = builderField.getName(); if (builderField.getName().startsWith("shadow$_")) { // These fields are added by debugger. continue; } VirtualField field = new VirtualField(builderField, this); fields.put(name, field); } return fields; }
private Map<String, VirtualMethod> buildMethodsMap() { Map<String, VirtualMethod> methods = new HashMap<>(); for (BuilderMethod method : getClassDef().getMethods()) { String descriptor = ReferenceUtil.getMethodDescriptor(method).split("->")[1]; VirtualMethod virtualMethod = new VirtualRealMethod(method, this); methods.put(descriptor, virtualMethod); } return Collections.unmodifiableMap(methods); }
@Nonnull @Override public Collection<? extends BuilderField> getSortedStaticFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getStaticFields(); }
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedVirtualMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getVirtualMethods(); }
@Nonnull @Override public Collection<? extends BuilderField> getSortedInstanceFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getInstanceFields(); }
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedDirectMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getDirectMethods(); }
return context.classPool.internClass(new BuilderClassDef(context.typePool.internType(type), accessFlags, context.typePool.internNullableType(superclass),
@Nonnull @Override public Collection<? extends BuilderField> getSortedStaticFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getStaticFields(); }
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedVirtualMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getVirtualMethods(); }
@Nonnull @Override public Collection<? extends BuilderField> getSortedInstanceFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getInstanceFields(); }
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedDirectMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getDirectMethods(); }
return classSection.internClass(new BuilderClassDef(typeSection.internType(type), accessFlags, typeSection.internNullableType(superclass),
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getMethods(); }
@Nonnull @Override public Collection<? extends BuilderField> getSortedFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getFields(); }
@Nonnull @Override public Collection<? extends BuilderField> getSortedStaticFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getStaticFields(); }
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedVirtualMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getVirtualMethods(); }
@Nonnull @Override public Collection<? extends BuilderField> getSortedInstanceFields(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getInstanceFields(); }
@Nonnull @Override public Collection<? extends BuilderMethod> getSortedDirectMethods(@Nonnull BuilderClassDef builderClassDef) { return builderClassDef.getDirectMethods(); }