Next: , Previous: Parser code, Up: Semantic Internals

3.2 Tag handling

A tag represents an individual item found in a buffer, such as a function or variable. Tag handling is handled in several source files.

Basic tag creation, queries, cloning, binding, and unbinding.
Write a tag or tag list to a stream. These routines are used by semanticdb-file.el when saving a list of tags.
Files associated with tags. Goto-tag, file for include, and file for a prototype.
Language dependent features of a tag, such as parent calculation, slot protection, and other states like abstract, virtual, static, and leaf.
Include file handling. Contains the include path concepts, and routines for looking up file names in the include path.
Convert a tag into a nicely formatted and colored string. Use semantic-test-all-format-tag-functions to test different output options.
Find tags matching different conditions in a tag table. These routines are used by semanticdb-find.el once the database has been converted into a simpler tag table.
Sorting lists of tags in different ways. Includes sorting a plain list of tags forward or backward. Includes binning tags based on attributes (bucketize), and tag adoption for multiple references to the same thing.
Capture documentation comments from near a tag.