Update ooo320-m1
[ooovba.git] / autodoc / source / parser_i / inc / s2_luidl / tk_punct.hxx
blobc8e1f54ed2b73c55710e616bdc9a2e72644064b0
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: tk_punct.hxx,v $
10 * $Revision: 1.5 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef ADC_UIDL_TK_PUNCT_HXX
32 #define ADC_UIDL_TK_PUNCT_HXX
34 // USED SERVICES
35 // BASE CLASSES
36 #include <s2_luidl/uidl_tok.hxx>
37 // COMPONENTS
38 #include <luxenum.hxx>
39 // PARAMETERS
42 namespace csi
44 namespace uidl
48 class TokPunctuation : public Token
50 public:
51 // TYPES
52 enum E_TokenId
54 e_none = 0,
55 BracketOpen = 1, // (
56 BracketClose = 2, // )
57 ArrayBracketOpen = 3, // [
58 ArrayBracketClose = 4, // ]
59 CurledBracketOpen = 5, // {
60 CurledBracketClose = 6, // }
61 Semicolon = 7, // ;
62 Colon = 8, // :
63 DoubleColon = 9, // ::
64 Comma = 10, // ,
65 Minus = 11, // -
66 Fullstop = 12, // .
67 Lesser = 13, // <
68 Greater = 14 // >
70 typedef lux::Enum<E_TokenId> EV_TokenId;
73 TokPunctuation(
74 EV_TokenId i_eTag )
75 : eTag(i_eTag) {}
76 // OPERATIONS
77 virtual void Trigger(
78 TokenInterpreter & io_rInterpreter ) const;
79 // INQUIRY
80 virtual const char *
81 Text() const;
82 EV_TokenId Id() const { return eTag; }
85 private:
86 // DATA
87 EV_TokenId eTag;
90 class Tok_EOL : public Token
92 // OPERATIONS
93 virtual void Trigger(
94 TokenInterpreter & io_rInterpreter ) const;
95 // INQUIRY
96 virtual const char *
97 Text() const;
100 class Tok_EOF : public Token
102 // OPERATIONS
103 virtual void Trigger(
104 TokenInterpreter & io_rInterpreter ) const;
105 // INQUIRY
106 virtual const char *
107 Text() const;
111 } // namespace uidl
112 } // namespace csi
114 #endif