1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: tk_keyw.hxx,v $
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_KEYW_HXX
32 #define ADC_UIDL_TK_KEYW_HXX
36 #include <s2_luidl/uidl_tok.hxx>
38 #include <luxenum.hxx>
48 class TokKeyword
: public Token
53 class TokBuiltInType
: public TokKeyword
71 typedef lux::Enum
<E_TokenId
> EV_TokenId
;
78 TokenInterpreter
& io_rInterpreter
) const;
81 E_TokenId
Id() const { return eTag
; }
89 class TokTypeModifier
: public TokKeyword
98 typedef lux::Enum
<E_TokenId
> EV_TokenId
;
103 virtual void Trigger(
104 TokenInterpreter
& io_rInterpreter
) const;
107 E_TokenId
Id() const { return eTag
; }
114 class TokMetaType
: public TokKeyword
134 typedef lux::Enum
<E_TokenId
> EV_TokenId
;
140 virtual void Trigger(
141 TokenInterpreter
& io_rInterpreter
) const;
144 E_TokenId
Id() const { return eTag
; }
152 class TokStereotype
: public TokKeyword
174 typedef lux::Enum
<E_TokenId
> EV_TokenId
;
180 virtual void Trigger(
181 TokenInterpreter
& io_rInterpreter
) const;
185 E_TokenId
Id() const { return eTag
; }
192 class TokParameterHandling
: public TokKeyword
203 typedef lux::Enum
<E_TokenId
> EV_TokenId
;
205 TokParameterHandling(
209 virtual void Trigger(
210 TokenInterpreter
& io_rInterpreter
) const;
214 E_TokenId
Id() const { return eTag
; }
221 class TokRaises
: public TokKeyword
224 virtual void Trigger(
225 TokenInterpreter
& io_rInterpreter
) const;
230 class TokNeeds
: public TokKeyword
233 virtual void Trigger(
234 TokenInterpreter
& io_rInterpreter
) const;
239 class TokObserves
: public TokKeyword
242 virtual void Trigger(
243 TokenInterpreter
& io_rInterpreter
) const;