Handle template expressions that may use the << or >> operators
[arduino-ctags.git] / slang.c
blob74c50c32353f79a2b600d6c6725caac03539babe
1 /*
2 * $Id: slang.c 443 2006-05-30 04:37:13Z darren $
4 * Copyright (c) 2000-2001, Francesc Rocher
6 * Author: Francesc Rocher <f.rocher@computer.org>.
8 * This source code is released for free distribution under the terms of the
9 * GNU General Public License.
11 * This module contains functions for generating tags for S-Lang files.
15 * INCLUDE FILES
17 #include "general.h" /* must always come first */
18 #include "parse.h"
21 * FUNCTION DEFINITIONS
23 static void installSlangRegex (const langType language)
25 addTagRegex (language,
26 "^.*define[ \t]+([A-Z_][A-Z0-9_]*)[^;]*$",
27 "\\1", "f,function,functions", "i");
28 addTagRegex (language,
29 "^[ \t]*implements[ \t]+\\([ \t]*\"([^\"]*)\"[ \t]*\\)[ \t]*;",
30 "\\1", "n,namespace,namespaces", NULL);
33 extern parserDefinition* SlangParser (void)
35 static const char *const extensions [] = { "sl", NULL };
36 parserDefinition* const def = parserNew ("SLang");
37 def->extensions = extensions;
38 def->initialize = installSlangRegex;
39 def->regex = TRUE;
40 return def;