xref: /Universal-ctags/docs/extending.rst (revision 8fc51ccaf6f423839db3baf237fd2e31d72fcd4a)
1*063580daSHiroo HAYASHI.. _extending_ctags_in_c:
2*063580daSHiroo HAYASHI
3eb375513SMasatake YAMATO=============================================================================
4d170c1c2SHiroo HAYASHIExtending ctags with a parser written in C
56575e367SMasatake YAMATO=============================================================================
66575e367SMasatake YAMATO
7*063580daSHiroo HAYASHIThis chapter describes how to add a parser in C and the internal API of
8*063580daSHiroo HAYASHIUniversal Ctags.
9*063580daSHiroo HAYASHI
10*063580daSHiroo HAYASHIBefore you start writing a parser in C, consider using *optlib parser*.
11*063580daSHiroo HAYASHIUniversal Ctags extends the functionality so extensively that it can implement
12*063580daSHiroo HAYASHImost of functionality for the parser.
13*063580daSHiroo HAYASHISee :ref:`ctags-optlib(7) <ctags-optlib(7)>` and :ref:`optlib` for details.
14*063580daSHiroo HAYASHI
15*063580daSHiroo HAYASHI*optlib parser* is also suitable for prototyping of a parser in C.
16*063580daSHiroo HAYASHI
17eb375513SMasatake YAMATO.. toctree::
18d170c1c2SHiroo HAYASHI	:maxdepth: 4
196575e367SMasatake YAMATO
20*063580daSHiroo HAYASHI	parser-in-c.rst
21eb375513SMasatake YAMATO	internal.rst
22