Lines Matching refs:cursor
1452 * \brief Describes the kind of entity that a cursor refers to.
1566 * while the type of the variable "size" is referenced. The cursor
1588 * This cursor kind is used to describe the jump to "start_over" in the
1598 * A label reference cursor refers to a label statement.
1606 * An overloaded declaration reference cursor occurs in C++ templates where
1636 * referenced by this cursor.
1931 * This cursor kind is used to describe the "start_over:" label statement in
1944 * This cursor kind is used to describe compound statements, e.g. function
2060 * This cursor kind is used to describe the null statement.
2078 * The translation unit cursor exists primarily to act as the root
2079 * cursor for traversing the contents of a translation unit.
2120 * \brief A cursor representing some element in the abstract syntax tree for
2123 * The cursor abstraction unifies the different kinds of entities in a
2125 * etc.--under a single "cursor" abstraction with a common set of operations.
2126 * Common operation for a cursor include: getting the physical location in
2127 * a source file where the cursor points, getting the name associated with a
2128 * cursor, and retrieving cursors for any child nodes of a particular cursor.
2131 * clang_getTranslationUnitCursor() produces a cursor for a translation unit,
2158 * \brief Retrieve the NULL cursor, which represents no entity.
2163 * \brief Retrieve the cursor that represents the given translation unit.
2165 * The translation unit cursor can be used to start traversing the
2176 * \brief Returns non-zero if \p cursor is null.
2178 CINDEX_LINKAGE int clang_Cursor_isNull(CXCursor cursor);
2181 * \brief Compute a hash value for the given cursor.
2186 * \brief Retrieve the kind of the given cursor.
2191 * \brief Determine whether the given cursor kind represents a declaration.
2196 * \brief Determine whether the given cursor kind represents a simple
2201 * particular cursor refers to another entity.
2206 * \brief Determine whether the given cursor kind represents an expression.
2211 * \brief Determine whether the given cursor kind represents a statement.
2216 * \brief Determine whether the given cursor kind represents an attribute.
2221 * \brief Determine whether the given cursor kind represents an invalid
2222 * cursor.
2227 * \brief Determine whether the given cursor kind represents a translation
2233 * \brief Determine whether the given cursor represents a preprocessing
2239 * \brief Determine whether the given cursor represents a currently
2245 * \brief Describe the linkage of the entity referred to by a cursor.
2266 * \brief Determine the linkage of the entity referred to by a given cursor.
2268 CINDEX_LINKAGE enum CXLinkageKind clang_getCursorLinkage(CXCursor cursor);
2271 * \brief Determine the availability of the entity that this cursor refers to,
2274 * \param cursor The cursor to query.
2276 * \returns The availability of the cursor.
2279 clang_getCursorAvailability(CXCursor cursor);
2319 * \brief Determine the availability of the entity that this cursor refers to
2322 * \param cursor The cursor to query.
2355 clang_getCursorPlatformAvailability(CXCursor cursor,
2370 * \brief Describe the "language" of the entity referred to by a cursor.
2380 * \brief Determine the "language" of the entity referred to by a given cursor.
2382 CINDEX_LINKAGE enum CXLanguageKind clang_getCursorLanguage(CXCursor cursor);
2385 * \brief Returns the translation unit that a cursor originated from.
2408 * \returns non-zero if the set contains the specified cursor.
2411 CXCursor cursor);
2419 CXCursor cursor);
2422 * \brief Determine the semantic parent of the given cursor.
2424 * The semantic parent of a cursor is the cursor that semantically contains
2425 * the given \p cursor. For many declarations, the lexical and semantic parents
2454 CINDEX_LINKAGE CXCursor clang_getCursorSemanticParent(CXCursor cursor);
2457 * \brief Determine the lexical parent of the given cursor.
2459 * The lexical parent of a cursor is the cursor in which the given \p cursor
2490 CINDEX_LINKAGE CXCursor clang_getCursorLexicalParent(CXCursor cursor);
2521 * \param cursor A cursor representing an Objective-C or C++
2535 CINDEX_LINKAGE void clang_getOverriddenCursors(CXCursor cursor,
2547 * cursor.
2549 CINDEX_LINKAGE CXFile clang_getIncludedFile(CXCursor cursor);
2567 * \brief Map a source location to the cursor that describes the entity at that
2571 * unit down to the most specific cursor that describes the entity at that
2574 * cursor for "x"; similarly for "y". If the cursor points anywhere between
2576 * will return a cursor referring to the "+" expression.
2578 * \returns a cursor representing the entity at the given source location, or
2579 * a NULL cursor if no such entity can be found.
2585 * by the given cursor.
2597 * the given cursor.
2599 * The extent of a cursor starts with the file/line/column pointing at the
2600 * first character within the source construct that the cursor refers to and
2732 * If the cursor does not reference a typedef declaration, an invalid type is
2740 * If the cursor does not reference an enum declaration, an invalid type is
2749 * If the cursor does not reference an enum constant declaration, LLONG_MIN is returned.
2750 * Since this is also potentially a valid constant value, the kind of the cursor
2759 * If the cursor does not reference an enum constant declaration, ULLONG_MAX is returned.
2760 * Since this is also potentially a valid constant value, the kind of the cursor
2768 * If a cursor that is not a bit field declaration is passed in, -1 is returned.
2774 * cursor.
2782 * \brief Retrieve the argument cursor of a function or method.
2784 * The argument cursor can be determined for calls as well as for declarations
2786 * invalid cursor is returned.
2835 * \brief Return the cursor for the declaration of the given type.
2885 * \brief Retrieve the result type associated with a given cursor.
2887 * This only returns a valid type if the cursor refers to a function or method.
2994 * If the cursor is not a record field declaration, CXTypeLayoutError_Invalid
3023 * \brief Returns non-zero if the cursor specifies a Record member that is a
3029 * \brief Returns 1 if the base class specified by the cursor with kind
3036 * cursor with kind CX_CXXBaseSpecifier.
3048 * If the cursor refers to a C++ declaration, its access control level within its
3049 * parent scope is returned. Otherwise, if the cursor refers to a base specifier or
3056 * \c CXCursor_OverloadedDeclRef cursor.
3058 * \param cursor The cursor whose overloaded declarations are being queried.
3060 * \returns The number of overloaded declarations referenced by \c cursor. If it
3061 * is not a \c CXCursor_OverloadedDeclRef cursor, returns 0.
3063 CINDEX_LINKAGE unsigned clang_getNumOverloadedDecls(CXCursor cursor);
3066 * \brief Retrieve a cursor for one of the overloaded declarations referenced
3067 * by a \c CXCursor_OverloadedDeclRef cursor.
3069 * \param cursor The cursor whose overloaded declarations are being queried.
3072 * the cursor.
3074 * \returns A cursor representing the declaration referenced by the given
3075 * \c cursor at the specified \c index. If the cursor does not have an
3079 CINDEX_LINKAGE CXCursor clang_getOverloadedDecl(CXCursor cursor,
3115 * cursor should proceed after visiting a particular child cursor.
3122 * \brief Terminates the cursor traversal.
3126 * \brief Continues the cursor traversal with the next sibling of
3127 * the cursor just visited, without visiting its children.
3131 * \brief Recursively traverse the children of this cursor, using
3138 * \brief Visitor invoked for each cursor found by a traversal.
3140 * This visitor function will be invoked for each cursor found by
3141 * clang_visitCursorChildren(). Its first argument is the cursor being
3142 * visited, its second argument is the parent visitor for that cursor,
3149 typedef enum CXChildVisitResult (*CXCursorVisitor)(CXCursor cursor,
3154 * \brief Visit the children of a particular cursor.
3156 * This function visits all the direct children of the given cursor,
3162 * \param parent the cursor whose child may be visited. All kinds of
3181 * \brief Visitor invoked for each cursor found by a traversal.
3183 * This visitor block will be invoked for each cursor found by
3184 * clang_visitChildrenWithBlock(). Its first argument is the cursor being
3185 * visited, its second argument is the parent visitor for that cursor.
3191 (^CXCursorVisitorBlock)(CXCursor cursor, CXCursor parent);
3194 * Visits the children of a cursor using the specified block. Behaves
3219 * by the given cursor.
3270 * \brief Retrieve a name for the entity referenced by this cursor.
3290 * \brief Retrieve the display name for the entity referenced by this cursor.
3292 * The display name contains extra information that helps identify the cursor,
3298 /** \brief For a cursor that is a reference, retrieve a cursor representing the
3302 * Objective-C superclass reference cursor refers to an Objective-C class.
3303 * This function produces the cursor for the Objective-C class from the
3304 * cursor for the superclass reference. If the input cursor is a declaration or
3306 * Otherwise, returns the NULL cursor.
3311 * \brief For a cursor that is either a reference to or a declaration
3312 * of some entity, retrieve a cursor that describes the definition of
3328 * function will take any cursor pointing to a declaration of "f"
3329 * (the first or fourth lines of the example) or a cursor referenced
3331 * declaration cursor pointing to the definition (the second "f"
3334 * If given a cursor for which there is no corresponding definition,
3336 * translation unit, returns a NULL cursor.
3341 * \brief Determine whether the declaration pointed to by this cursor
3347 * \brief Retrieve the canonical cursor corresponding to the given cursor.
3363 * entity. One of these cursor is considered the "canonical" cursor, which
3368 * \returns The canonical cursor for the entity referred to by the given cursor.
3374 * \brief If the cursor points to a selector identifier in a objc method or
3377 * After getting a cursor with #clang_getCursor, this can be called to
3380 * \returns The selector index if the cursor is an objc method or message
3381 * expression and the cursor is pointing to a selector identifier, or -1
3387 * \brief Given a cursor pointing to a C++ method call or an ObjC message,
3394 * If the method/message is "static" or the cursor does not point to a
3400 * \brief Given a cursor pointing to an ObjC message, returns the CXType of the
3425 * \brief Given a cursor that represents a property declaration, return the
3449 * \brief Given a cursor that represents an ObjC method or parameter
3456 * \brief Given a cursor that represents an ObjC method or property declaration,
3458 * Returns zero if the cursor is not such a declaration or it is "@required".
3463 * \brief Returns non-zero if the given cursor is a variadic function or method.
3468 * \brief Given a cursor that represents a declaration, return the associated
3475 * \brief Given a cursor that represents a declaration, return the associated
3481 * \brief Given a cursor that represents a documentable entity (e.g.,
3488 * \brief Given a cursor that represents a documentable entity (e.g.,
3509 * \brief Given a CXCursor_ModuleImportDecl cursor, return the associated module.
4103 * \brief Given a cursor that represents a template, determine
4104 * the cursor kind of the specializations would be generated by instantiating
4109 * cursor. For example, it can describe whether a class template cursor is
4112 * \param C The cursor to query. This cursor should represent a template
4115 * \returns The cursor kind of the specializations that would be generated
4122 * \brief Given a cursor that may represent a specialization or instantiation
4123 * of a template, retrieve the cursor that represents the template that it
4142 * \param C A cursor that may be a specialization of a template or a member
4145 * \returns If the given cursor is a specialization or instantiation of a
4147 * from which it was instantiated. Otherwise, returns a NULL cursor.
4152 * \brief Given a cursor that references something else, return the source range
4155 * \param C A cursor pointing to a member reference, a declaration reference, or
4166 * \returns The piece of the name pointed to by the given cursor. If there is no
4167 * name, or if the PieceIndex is out-of-range, a null-cursor will be returned.
4306 * * when the cursor is over the 'f', a DeclRefExpr cursor referring to 'f'.
4307 * * when the cursor is over the '(' or the ')', a CallExpr referring to 'f'.
4308 * * when the cursor is over the 'x', a DeclRefExpr cursor referring to 'x'.
4399 * The cursor kind will be a macro, keyword, or a declaration (one of the
4400 * *Decl cursor kinds), describing the entity that the completion is
4403 * \todo In the future, we would like to provide a full cursor, to allow
4716 * definition cursor.
4718 * \param cursor The cursor to query.
4724 clang_getCursorCompletionString(CXCursor cursor);
4926 * code-completion location will coincide with the cursor. For example, if \c p
4930 * "p" points to. The client is responsible for placing the cursor at the
5038 * \brief Returns the cursor kind for the container for the current code
5235 * \param cursor pointing to a declaration or a reference of one.
5246 CINDEX_LINKAGE CXResult clang_findReferencesInFile(CXCursor cursor, CXFile file,
5429 CXCursor cursor;
5439 CXCursor cursor;
5445 CXCursor cursor;
5461 CXCursor cursor;
5498 CXCursor cursor;
5504 CXCursor cursor;
5560 * \brief Reference cursor.
5562 CXCursor cursor;