]> git.lyx.org Git - lyx.git/blob - src/mathed/math_macrotable.h
enable direct input of #1...#9; some whitespace changes
[lyx.git] / src / mathed / math_macrotable.h
1 // -*- C++ -*-
2 #ifndef MATH_MACROTABLE_H
3 #define MATH_MACROTABLE_H
4
5 #include <map>
6 #include "LString.h"
7 #include "math_atom.h"
8
9 #ifdef __GNUG__
10 #pragma interface
11 #endif
12
13 class MathArray;
14
15 ///
16 struct MathMacroTable {
17 public:
18         ///
19         static void create(string const &, int, string const &);
20         ///
21         static void create(string const &, int, MathArray const &);
22         ///
23         static MathAtom & provide(string const &);
24         ///
25         static bool has(string const &);
26         ///
27         static void builtinMacros();
28 private:
29         ///
30         typedef std::map<string, MathAtom> table_type;
31         //
32         static table_type macro_table;
33 public:
34         ///
35         static void dump();
36 };
37 #endif