< prev index next >

src/jdk.jextract/share/classes/com/sun/tools/jextract/AsmCodeFactory.java

Print this page

        

@@ -164,14 +164,11 @@
      * @param tree The Tree
      * @param parentType The struct type
      */
     private void addField(ClassVisitor cw, Tree tree, Type parentType) {
         String fieldName = tree.name();
-        if (fieldName.isEmpty()) {
-            //skip anon fields
-            return;
-        }
+        assert !fieldName.isEmpty();
         Type type = tree.type();
         JType jt = owner.globalLookup(type);
         assert (jt != null);
         if (cw == global_cw) {
             String uniqueName = fieldName + "." + jt.getDescriptor();

@@ -232,11 +229,11 @@
         cw.visitField(ACC_PUBLIC | ACC_FINAL | ACC_STATIC, name, desc, null, value);
     }
 
     @Override
     public Void visitStruct(StructTree structTree, JType jt) {
-        String nativeName = structTree.identifier();
+        String nativeName = structTree.name();
         Type type = structTree.type();
         logger.fine(() -> "Create struct: " + nativeName);
 
         String intf = Utils.toClassName(nativeName);
         String name = internal_name + "$" + intf;

@@ -303,11 +300,11 @@
         createAnnotationCls(enumTree);
         return null;
     }
 
     private void createAnnotationCls(Tree tree) {
-        String nativeName = tree.identifier();
+        String nativeName = tree.name();
         logger.fine(() -> "Create annotation for: " + nativeName);
 
         String intf = Utils.toClassName(nativeName);
         String name = internal_name + "$" + intf;
 

@@ -343,11 +340,11 @@
         String nDesc = fnif.getFunction().getNativeDescriptor();
         if (tree == null) {
             intf = ((JType.InnerType) fnif.type).getName();
             nativeName = "anonymous function";
         } else {
-            nativeName = tree.identifier();
+            nativeName = tree.name();
             intf = Utils.toClassName(nativeName);
         }
         logger.fine(() -> "Create FunctionalInterface " + intf);
 
         final String name = internal_name + "$" + intf;

@@ -386,17 +383,10 @@
         }
     }
 
     @Override
     public Void visitTypedef(TypedefTree typedefTree, JType jt) {
-        Type t = typedefTree.type();
-        if (t.canonicalType().kind() == TypeKind.Enum &&
-            t.spelling().equals(t.canonicalType().getDeclarationCursor().spelling())) {
-            logger.fine("Skip redundant typedef " + t.spelling());
-            return null;
-        }
-
         // anonymous typedef struct {} xxx will not get TypeAlias
         if (jt instanceof TypeAlias) {
             TypeAlias alias = (TypeAlias) jt;
             if (alias.getAnnotationDescriptor() != null) {
                 createAnnotationCls(typedefTree);
< prev index next >