浏览代码

+ is_class_or_interface_or_objc_or_java() function

git-svn-id: branches/jvmbackend@18437 -
Jonas Maebe 14 年之前
父节点
当前提交
30d9fdb0af
共有 1 个文件被更改,包括 10 次插入0 次删除
  1. 10 0
      compiler/symdef.pas

+ 10 - 0
compiler/symdef.pas

@@ -834,6 +834,7 @@ interface
     function is_classhelper(def: tdef): boolean;
     function is_classhelper(def: tdef): boolean;
     function is_class_or_interface(def: tdef): boolean;
     function is_class_or_interface(def: tdef): boolean;
     function is_class_or_interface_or_objc(def: tdef): boolean;
     function is_class_or_interface_or_objc(def: tdef): boolean;
+    function is_class_or_interface_or_objc_or_java(def: tdef): boolean;
     function is_class_or_interface_or_object(def: tdef): boolean;
     function is_class_or_interface_or_object(def: tdef): boolean;
     function is_class_or_interface_or_dispinterface(def: tdef): boolean;
     function is_class_or_interface_or_dispinterface(def: tdef): boolean;
     function is_implicit_pointer_object_type(def: tdef): boolean;
     function is_implicit_pointer_object_type(def: tdef): boolean;
@@ -5988,6 +5989,15 @@ implementation
       end;
       end;
 
 
 
 
+    function is_class_or_interface_or_objc_or_java(def: tdef): boolean;
+      begin
+        result:=
+          assigned(def) and
+          (def.typ=objectdef) and
+          (tobjectdef(def).objecttype in [odt_class,odt_interfacecom,odt_interfacecorba,odt_objcclass,odt_objcprotocol,odt_javaclass,odt_interfacejava]);
+      end;
+
+
     function is_class_or_interface_or_object(def: tdef): boolean;
     function is_class_or_interface_or_object(def: tdef): boolean;
       begin
       begin
         result:=
         result:=