public int countFieldsInStruct(Struct s) throws UnsupportedConversionException { int count = 0; for (Declaration declaration : s.getDeclarations()) { if (declaration instanceof VariablesDeclaration) { count += ((VariablesDeclaration) declaration).getDeclarators().size(); } } for (SimpleTypeRef parentName : s.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) { throw new UnsupportedConversionException(s, "Cannot find parent " + parentName + " of struct " + s); } count += countFieldsInStruct(parent); } return count; }
public int countFieldsInStruct(Struct s) throws UnsupportedConversionException { int count = 0; for (Declaration declaration : s.getDeclarations()) { if (declaration instanceof VariablesDeclaration) { count += ((VariablesDeclaration) declaration).getDeclarators().size(); } } for (SimpleTypeRef parentName : s.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) { throw new UnsupportedConversionException(s, "Cannot find parent " + parentName + " of struct " + s); } count += countFieldsInStruct(parent); } return count; }
public int countFieldsInStruct(Struct s) throws UnsupportedConversionException { int count = 0; for (Declaration declaration : s.getDeclarations()) { if (declaration instanceof VariablesDeclaration) { count += ((VariablesDeclaration) declaration).getDeclarators().size(); } } for (SimpleTypeRef parentName : s.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) { throw new UnsupportedConversionException(s, "Cannot find parent " + parentName + " of struct " + s); } count += countFieldsInStruct(parent); } return count; }
public boolean isVirtual(Struct struct) { Identifier name = getActualTaggedTypeName(struct); Boolean bVirtual = structsVirtuality.get(name); if (bVirtual == null) { boolean hasVirtualParent = false, hasVirtualMembers = false; for (SimpleTypeRef parentName : struct.getParents()) { Struct parentStruct = result.structsByName.get(parentName.getName()); if (parentStruct == null) { if (result.config.verbose) { System.out.println("Failed to resolve parent '" + parentName + "' for struct '" + name + "'"); } continue; } if (isVirtual(parentStruct)) { hasVirtualParent = true; break; } } for (Declaration mb : struct.getDeclarations()) { if (mb.hasModifier(ModifierType.Virtual)) { hasVirtualMembers = true; break; } } bVirtual = hasVirtualMembers && !hasVirtualParent; structsVirtuality.put(name, bVirtual); } return bVirtual; } protected String ioVarName = "io", ioStaticVarName = "IO";
public int countFieldsInStruct(Struct s) throws UnsupportedConversionException { int count = 0; for (Declaration declaration : s.getDeclarations()) { if (declaration instanceof VariablesDeclaration) { count += ((VariablesDeclaration) declaration).getDeclarators().size(); } } for (SimpleTypeRef parentName : s.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) { throw new UnsupportedConversionException(s, "Cannot find parent " + parentName + " of struct " + s); } count += countFieldsInStruct(parent); } return count; }
public boolean isVirtual(Struct struct) { Identifier name = getActualTaggedTypeName(struct); Boolean bVirtual = structsVirtuality.get(name); if (bVirtual == null) { boolean hasVirtualParent = false, hasVirtualMembers = false; for (SimpleTypeRef parentName : struct.getParents()) { Struct parentStruct = result.structsByName.get(parentName.getName()); if (parentStruct == null) { if (result.config.verbose) { System.out.println("Failed to resolve parent '" + parentName + "' for struct '" + name + "'"); } continue; } if (isVirtual(parentStruct)) { hasVirtualParent = true; break; } } for (Declaration mb : struct.getDeclarations()) { if (mb.hasModifier(ModifierType.Virtual)) { hasVirtualMembers = true; break; } } bVirtual = hasVirtualMembers && !hasVirtualParent; structsVirtuality.put(name, bVirtual); } return bVirtual; } protected String ioVarName = "io", ioStaticVarName = "IO";
new ArrayList<VariablesDeclaration>(), new ArrayList<VariablesDeclaration>()); if (!nativeStruct.getParents().isEmpty()) { for (SimpleTypeRef parentName : nativeStruct.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) {
new ArrayList<VariablesDeclaration>(), new ArrayList<VariablesDeclaration>()); if (!nativeStruct.getParents().isEmpty()) { for (SimpleTypeRef parentName : nativeStruct.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) {
new ArrayList<VariablesDeclaration>(), new ArrayList<VariablesDeclaration>()); if (!nativeStruct.getParents().isEmpty()) { for (SimpleTypeRef parentName : nativeStruct.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) {
new ArrayList<VariablesDeclaration>(), new ArrayList<VariablesDeclaration>()); if (!nativeStruct.getParents().isEmpty()) { for (SimpleTypeRef parentName : nativeStruct.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) {
super.visitJavaInterface(struct); if (struct.getParents().contains(ident(Callback.class))) { Function f = null; for (Declaration d : struct.getDeclarations()) {
super.visitJavaInterface(struct); if (struct.getParents().contains(ident(Callback.class))) { Function f = null; for (Declaration d : struct.getDeclarations()) {
protected void doVisitStruct(Struct struct) { visitTaggedTypeRef(struct); visit(struct.getDeclarations()); visit(struct.getProtocols()); visit(struct.getParents()); }
boolean isFwd = struct.isForwardDeclaration(); if (!isFwd && struct.getDeclarations().isEmpty() && config.treatEmptyStructsAsForwardDecls) { List<SimpleTypeRef> parents = struct.getParents(); Struct p; if (parents.isEmpty() || parents.size() == 1 && ((p = structsByName.get(parents.get(0))) == null || p.isForwardDeclaration())) {
boolean isFwd = struct.isForwardDeclaration(); if (!isFwd && struct.getDeclarations().isEmpty() && config.treatEmptyStructsAsForwardDecls) { List<SimpleTypeRef> parents = struct.getParents(); Struct p; if (parents.isEmpty() || parents.size() == 1 && ((p = structsByName.get(parents.get(0))) == null || p.isForwardDeclaration())) {
modifiersStringPrefix(e); append("class ", e.getTag()); if (!e.getParents().isEmpty()) { append(" : ").implode(e.getParents(), ", "); modifiersStringPrefix(e); append(e.getType() == Struct.Type.JavaClass ? "class " : "interface ", e.getTag()); if (!e.getParents().isEmpty()) { append(" extends ").implode(e.getParents(), ", "); modifiersStringPrefix(e); append(e.getTag()); if (!e.getParents().isEmpty()) { append(" : ").implode(e.getParents(), ", ");
orderedFieldNames.toArray(new Expression[orderedFieldNames.size()])); Block getFieldOrderImpl; if (nativeStruct.getParents().isEmpty()) { getFieldOrderImpl = block(new Statement.Return(selfList)); } else {
Identifier baseClass = null; if (!onlyFields) { if (!struct.getParents().isEmpty()) { for (SimpleTypeRef parentName : struct.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) {
Identifier baseClass = null; if (!onlyFields) { if (!struct.getParents().isEmpty()) { for (SimpleTypeRef parentName : struct.getParents()) { Struct parent = result.structsByName.get(parentName.getName()); if (parent == null) {
List<SimpleTypeRef> parentsForInstance = new ArrayList<SimpleTypeRef>(in.getParents()); if (instanceStruct.getParents().isEmpty()) { if (isInterface) { instanceStruct.addParent(ident(ObjCObject.class)); if (classStruct.getParents().isEmpty()) { if (isNSObject) { classStruct.addParent(ident(NSClass.class));