xref: /Universal-ctags/parsers/markdown.h (revision 3bbeaff45d748874f566350ab065b5510e382c16)
1*3bbeaff4SMasatake YAMATO /*
2*3bbeaff4SMasatake YAMATO *   Copyright (c) 2022, Masatake YAMATO
3*3bbeaff4SMasatake YAMATO *
4*3bbeaff4SMasatake YAMATO *   This source code is released for free distribution under the terms of the
5*3bbeaff4SMasatake YAMATO *   GNU General Public License version 2 or (at your option) any later version.
6*3bbeaff4SMasatake YAMATO *
7*3bbeaff4SMasatake YAMATO *   The interface for subparsers of Markdown
8*3bbeaff4SMasatake YAMATO */
9*3bbeaff4SMasatake YAMATO #ifndef CTAGS_PARSER_MARKDOWN_H
10*3bbeaff4SMasatake YAMATO #define CTAGS_PARSER_MARKDOWN_H
11*3bbeaff4SMasatake YAMATO 
12*3bbeaff4SMasatake YAMATO /*
13*3bbeaff4SMasatake YAMATO *   INCLUDE FILES
14*3bbeaff4SMasatake YAMATO */
15*3bbeaff4SMasatake YAMATO #include "general.h"  /* must always come first */
16*3bbeaff4SMasatake YAMATO 
17*3bbeaff4SMasatake YAMATO #include "subparser.h"
18*3bbeaff4SMasatake YAMATO #include "vstring.h"
19*3bbeaff4SMasatake YAMATO 
20*3bbeaff4SMasatake YAMATO typedef struct sMarkdownSubparser markdownSubparser;
21*3bbeaff4SMasatake YAMATO 
22*3bbeaff4SMasatake YAMATO struct sMarkdownSubparser {
23*3bbeaff4SMasatake YAMATO 	subparser subparser;
24*3bbeaff4SMasatake YAMATO 	bool (* extractLanguageForCodeBlock) (markdownSubparser *s,
25*3bbeaff4SMasatake YAMATO 										  const char *langMarker,
26*3bbeaff4SMasatake YAMATO 										  vString *langName);
27*3bbeaff4SMasatake YAMATO };
28*3bbeaff4SMasatake YAMATO 
29*3bbeaff4SMasatake YAMATO #endif
30