public void chooseLibraryClasses(String packageName, String rootPackageName) { libraries.clear(); javaPackages.clear(); javaPackageByLibrary.clear(); libraries.addAll(structsByLibrary.keySet()); libraries.addAll(callbacksByLibrary.keySet()); libraries.addAll(functionsByLibrary.keySet()); libraries.addAll(enumsByLibrary.keySet()); libraries.addAll(globalsByLibrary.keySet()); libraries.addAll(definesByLibrary.keySet()); libraries.addAll(stringConstants.keySet()); for (String library : libraries) { Identifier javaPackage = getLibraryPackage(library); if (javaPackage != null) { javaPackageByLibrary.put(library, javaPackage); } } javaPackages.addAll(javaPackageByLibrary.values()); }
public void chooseLibraryClasses(String packageName, String rootPackageName) { libraries.clear(); javaPackages.clear(); javaPackageByLibrary.clear(); libraries.addAll(structsByLibrary.keySet()); libraries.addAll(callbacksByLibrary.keySet()); libraries.addAll(functionsByLibrary.keySet()); libraries.addAll(enumsByLibrary.keySet()); libraries.addAll(globalsByLibrary.keySet()); libraries.addAll(definesByLibrary.keySet()); libraries.addAll(stringConstants.keySet()); for (String library : libraries) { Identifier javaPackage = getLibraryPackage(library); if (javaPackage != null) { javaPackageByLibrary.put(library, javaPackage); } } javaPackages.addAll(javaPackageByLibrary.values()); }
public Identifier getLibraryDeclarationsClassFullName(String library) { Identifier name = getLibraryDeclarationsClassSimpleName(library); return name == null ? null : ident(getLibraryPackage(library), name); }
public Identifier getLibraryDeclarationsClassFullName(String library) { Identifier name = getLibraryDeclarationsClassSimpleName(library); return name == null ? null : ident(getLibraryPackage(library), name); }
public Identifier getLibraryClassFullName(String library) { return ident(getLibraryPackage(library), getLibraryClassSimpleName(library)); }
public Identifier getLibraryClassFullName(String library) { return ident(getLibraryPackage(library), getLibraryClassSimpleName(library)); }
private void visit(final Identifier fullClassName, Element interf, String currentLibrary) throws FileNotFoundException { final Identifier pack = fullClassName.resolveAllButLastIdentifier(); String spack = result.getLibraryPackage(currentLibrary).toString(); final PrintWriter out = new PrintWriter(getLibOut(spack, currentLibrary)); interf.accept(new Scanner() {
private void visit(final Identifier fullClassName, Element interf, String currentLibrary) throws FileNotFoundException { final Identifier pack = fullClassName.resolveAllButLastIdentifier(); String spack = result.getLibraryPackage(currentLibrary).toString(); final PrintWriter out = new PrintWriter(getLibOut(spack, currentLibrary)); interf.accept(new Scanner() {
public Identifier getPackageName(Struct struct) { if (struct == null) { return null; } String library = result.getLibrary(struct); Identifier javaPackage = result.getLibraryPackage(library); //if (struct.getType() == Struct.Type.ObjCClass) { // String name = String.valueOf(struct.getTag()); //if (name.equals("NSObject")) // javaPackage = ident(NSObject.class.getPackage().getName().split("\\.")); //else if (name.equals("NSClass")) // javaPackage = ident(NSClass.class.getPackage().getName().split("\\.")); //else if (name.equals("NSString")) // javaPackage = ident(NSString.class.getPackage().getName().split("\\.")); //} if (struct.getType() == Type.ObjCProtocol) { javaPackage = ident(javaPackage, "protocols"); } else if (struct.getCategoryName() != null) { javaPackage = ident(javaPackage, "categories"); } return javaPackage; }
public Identifier getPackageName(Struct struct) { if (struct == null) { return null; } String library = result.getLibrary(struct); Identifier javaPackage = result.getLibraryPackage(library); //if (struct.getType() == Struct.Type.ObjCClass) { // String name = String.valueOf(struct.getTag()); //if (name.equals("NSObject")) // javaPackage = ident(NSObject.class.getPackage().getName().split("\\.")); //else if (name.equals("NSClass")) // javaPackage = ident(NSClass.class.getPackage().getName().split("\\.")); //else if (name.equals("NSString")) // javaPackage = ident(NSString.class.getPackage().getName().split("\\.")); //} if (struct.getType() == Type.ObjCProtocol) { javaPackage = ident(javaPackage, "protocols"); } else if (struct.getCategoryName() != null) { javaPackage = ident(javaPackage, "categories"); } return javaPackage; }
public Identifier findRef(Identifier name, Element e, Identifier libraryClassName, boolean inLibClass) { if (e == null || !name.isPlain()) { return null; } String library = result.getLibrary(e); if (library == null) { return null; } // e = e.getParentElement(); Struct parentStruct = e instanceof Struct ? (Struct) e : e.findParentOfType(Struct.class); if (!inLibClass && parentStruct != null) { if (parentStruct == e) { return ident(result.getLibraryPackage(library), name); } return ident(getTaggedTypeIdentifierInJava(parentStruct), name); } return libMember(result.getLibraryClassFullName(library), libraryClassName, name); }
public Identifier findRef(Identifier name, Element e, Identifier libraryClassName, boolean inLibClass) { if (e == null || !name.isPlain()) { return null; } String library = result.getLibrary(e); if (library == null) { return null; } // e = e.getParentElement(); Struct parentStruct = e instanceof Struct ? (Struct) e : e.findParentOfType(Struct.class); if (!inLibClass && parentStruct != null) { if (parentStruct == e) { return ident(result.getLibraryPackage(library), name); } return ident(getTaggedTypeIdentifierInJava(parentStruct), name); } return libMember(result.getLibraryClassFullName(library), libraryClassName, name); }
public Identifier computeTaggedTypeIdentifierInJava(TaggedTypeRef s) { Identifier name = result.declarationsConverter.getActualTaggedTypeName(s); if (name == null) { return null; } String library = result.getLibrary(s); if (library == null) { return null; } name = name.clone(); Struct parentStruct = s.findParentOfType(Struct.class); //Struct parentStruct = s.findParentOfType(Struct.class); if (parentStruct != null && parentStruct != s) { return ident(getTaggedTypeIdentifierInJava(parentStruct), name); } else if ((s instanceof Struct) && (result.config.putTopStructsInSeparateFiles)) {// || result.config.runtime == JNAeratorConfig.Runtime.BridJ)) { return packageMember(result.getLibraryPackage(library), name); //return ident(result.getLibraryPackage(library), name); } else { return libMember(result.getLibraryClassFullName(library), null, name); } }
public Identifier computeTaggedTypeIdentifierInJava(TaggedTypeRef s) { Identifier name = result.declarationsConverter.getActualTaggedTypeName(s); if (name == null) { return null; } String library = result.getLibrary(s); if (library == null) { return null; } name = name.clone(); Struct parentStruct = s.findParentOfType(Struct.class); //Struct parentStruct = s.findParentOfType(Struct.class); if (parentStruct != null && parentStruct != s) { return ident(getTaggedTypeIdentifierInJava(parentStruct), name); } else if ((s instanceof Struct) && (result.config.putTopStructsInSeparateFiles)) {// || result.config.runtime == JNAeratorConfig.Runtime.BridJ)) { return packageMember(result.getLibraryPackage(library), name); //return ident(result.getLibraryPackage(library), name); } else { return libMember(result.getLibraryClassFullName(library), null, name); } }
protected void outputConvertedStruct(Struct struct, Signatures signatures, DeclarationsHolder out, String callerLibrary, boolean onlyFields) throws IOException { Struct structJavaClass = convertStruct(struct, signatures, out.getResolvedJavaIdentifier(), callerLibrary, onlyFields); if (structJavaClass == null) { return; } if (result.config.putTopStructsInSeparateFiles && struct.findParentOfType(Struct.class) == null) { String library = result.getLibrary(struct); Identifier javaPackage = result.getLibraryPackage(library); Identifier fullClassName = ident(javaPackage, structJavaClass.getTag().clone()); if (result.config.runtime == JNAeratorConfig.Runtime.BridJ) { structJavaClass.addAnnotation(new Annotation(typeRef(org.bridj.ann.Library.class), expr(library))); } structJavaClass.removeModifiers(ModifierType.Static); structJavaClass = result.notifyBeforeWritingClass(fullClassName, structJavaClass, signatures, library); if (structJavaClass != null) { PrintWriter pout = result.classOutputter.getClassSourceWriter(fullClassName.toString()); result.printJavaClass(javaPackage, structJavaClass, pout); pout.close(); } } else { out.addDeclaration(decl(structJavaClass)); } }
protected void outputConvertedStruct(Struct struct, Signatures signatures, DeclarationsHolder out, String callerLibrary, boolean onlyFields) throws IOException { Struct structJavaClass = convertStruct(struct, signatures, out.getResolvedJavaIdentifier(), callerLibrary, onlyFields); if (structJavaClass == null) { return; } if (result.config.putTopStructsInSeparateFiles && struct.findParentOfType(Struct.class) == null) { String library = result.getLibrary(struct); Identifier javaPackage = result.getLibraryPackage(library); Identifier fullClassName = ident(javaPackage, structJavaClass.getTag().clone()); if (result.config.runtime == JNAeratorConfig.Runtime.BridJ) { structJavaClass.addAnnotation(new Annotation(typeRef(org.bridj.ann.Library.class), expr(library))); } structJavaClass.removeModifiers(ModifierType.Static); structJavaClass = result.notifyBeforeWritingClass(fullClassName, structJavaClass, signatures, library); if (structJavaClass != null) { PrintWriter pout = result.classOutputter.getClassSourceWriter(fullClassName.toString()); result.printJavaClass(javaPackage, structJavaClass, pout); pout.close(); } } else { out.addDeclaration(decl(structJavaClass)); } }