// Cursors represent declarations and references (provides line/column info).
enum CXCursorKind {
- Cursor_Declaration,
- Cursor_Reference,
- Cursor_ObjC_ClassRef,
- Cursor_ObjC_ProtocolRef,
- Cursor_ObjC_MessageRef,
- Cursor_ObjC_SelectorRef
+ CXCursor_Declaration,
+ CXCursor_Reference,
+ CXCursor_ObjC_ClassRef,
+ CXCursor_ObjC_ProtocolRef,
+ CXCursor_ObjC_MessageRef,
+ CXCursor_ObjC_SelectorRef
};
typedef void *CXDecl; // A specific declaration within a translation unit.
extern "C" {
-// Some notes on CXEntity:
-//
-// - Since the 'ordinary' namespace includes functions, data, typedefs, ObjC interfaces, the
-// current algorithm is a bit naive (resulting in one entity for 2 different types). For example:
-//
-// module1.m: @interface Foo @end Foo *x;
-// module2.m: void Foo(int);
-//
-// - Since the unique name spans translation units, static data/functions within a CXTranslationUnit
-// are *not* currently represented by entities. As a result, there will be no entity for the following:
-//
-// module.m: static void Foo() { }
-//
-
CXIndex clang_createIndex()
{
return 0;
{
}
+// Some notes on CXEntity:
+//
+// - Since the 'ordinary' namespace includes functions, data, typedefs,
+// ObjC interfaces, thecurrent algorithm is a bit naive (resulting in one
+// entity for 2 different types). For example:
+//
+// module1.m: @interface Foo @end Foo *x;
+// module2.m: void Foo(int);
+//
+// - Since the unique name spans translation units, static data/functions
+// within a CXTranslationUnit are *not* currently represented by entities.
+// As a result, there will be no entity for the following:
+//
+// module.m: static void Foo() { }
+//
+
+
const char *clang_getDeclarationName(CXEntity)
{
return "";
CXCursorKind clang_getCursorKind(CXCursor)
{
- return Cursor_Declaration;
+ return CXCursor_Declaration;
}
unsigned clang_getCursorLine(CXCursor)