< prev index next >

src/jdk.internal.clang/share/classes/jdk/internal/clang/Cursor.java

Print this page
rev 49470 : [mq]: 8200452

@@ -57,10 +57,24 @@
 
     public native boolean isDeclaration();
     public native boolean isPreprocessing();
     public native boolean isInvalid();
     public native boolean isDefinition();
+    public native boolean isAnonymousStruct();
+
+    public boolean isAnonymousEnum() {
+        // libclang::clang_Cursor_isAnonymous only applies to struct, not enum
+        if (type().kind() == TypeKind.Enum) {
+            return spelling().isEmpty() &&
+                    type().spelling().startsWith("enum (anonymous");
+        }
+        return false;
+    }
+
+    public boolean isAnonymous() {
+        return isAnonymousStruct() || isAnonymousEnum();
+    }
 
     public native String spelling();
     public native String USR();
 
     public native int kind1();
< prev index next >