Back to index

texmacs  1.0.7.15
impl_language.hpp
Go to the documentation of this file.
00001 
00002 /******************************************************************************
00003 * MODULE     : language_internals.h
00004 * COPYRIGHT  : (C) 1999  Joris van der Hoeven
00005 *******************************************************************************
00006 * This software falls under the GNU general public license version 3 or later.
00007 * It comes WITHOUT ANY WARRANTY WHATSOEVER. For details, see the file LICENSE
00008 * in the root directory or <http://www.gnu.org/licenses/gpl-3.0.html>.
00009 ******************************************************************************/
00010 
00011 #ifndef IMPL_LANGUAGE_H
00012 #define IMPL_LANGUAGE_H
00013 #include "language.hpp"
00014 
00015 extern text_property_rep tp_normal_rep;
00016 extern text_property_rep tp_hyph_rep;
00017 extern text_property_rep tp_space_rep;
00018 extern text_property_rep tp_dspace_rep;
00019 extern text_property_rep tp_blank_rep;
00020 extern text_property_rep tp_period_rep;
00021 extern text_property_rep tp_operator_rep;
00022 extern text_property_rep tp_shortop_rep;
00023 
00024 struct verb_language_rep: language_rep {
00025   verb_language_rep (string name);
00026   text_property advance (tree t, int& pos);
00027   array<int> get_hyphens (string s);
00028   void hyphenate (string s, int after, string& left, string& right);
00029   string get_color (tree t, int start, int end);
00030 };
00031 
00032 struct scheme_language_rep: language_rep {
00033   hashmap<string,string> colored;
00034   scheme_language_rep (string name);
00035   text_property advance (tree t, int& pos);
00036   array<int> get_hyphens (string s);
00037   void hyphenate (string s, int after, string& left, string& right);
00038   string get_color (tree t, int start, int end);
00039 };
00040 
00041 struct mathemagix_language_rep: language_rep {
00042   hashmap<string,string> colored;
00043   mathemagix_language_rep (string name);
00044   text_property advance (tree t, int& pos);
00045   array<int> get_hyphens (string s);
00046   void hyphenate (string s, int after, string& left, string& right);
00047   string get_color (tree t, int start, int end);
00048 };
00049 
00050 struct cpp_language_rep: language_rep {
00051   hashmap<string,string> colored;
00052   cpp_language_rep (string name);
00053   text_property advance (tree t, int& pos);
00054   array<int> get_hyphens (string s);
00055   void hyphenate (string s, int after, string& left, string& right);
00056   string get_color (tree t, int start, int end);
00057 };
00058 
00059 #endif // defined IMPL_LANGUAGE_H