Update ooo320-m1
[ooovba.git] / autodoc / source / parser_i / inc / s2_luidl / cx_sub.hxx
bloba976b1433c94760fabd7a2e8fac6e295b3e72803
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: cx_sub.hxx,v $
10 * $Revision: 1.7 $
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_LUIDL_CX_SUB_HXX
32 #define ADC_LUIDL_CX_SUB_HXX
34 // USED SERVICES
35 // BASE CLASSES
36 #include <tokens/tkpcont2.hxx>
37 // COMPONENTS
38 // PARAMETERS
40 #include "uidl_tok.hxx"
42 namespace csi
44 namespace uidl
47 class Token_Receiver;
48 class Token;
51 class Cx_Base : public ::TkpContext
53 public:
54 virtual bool PassNewToken();
55 virtual TkpContext &
56 FollowUpContext();
57 protected:
58 // LIFECYCLE
59 Cx_Base(
60 Token_Receiver & o_rReceiver,
61 TkpContext & i_rFollowUpContext )
62 : rReceiver(o_rReceiver),
63 pFollowUpContext(&i_rFollowUpContext),
64 pNewToken()
66 protected:
67 void SetToken(
68 DYN Token * let_dpToken )
69 { pNewToken = let_dpToken; }
70 Token_Receiver & Receiver() { return rReceiver; }
72 private:
73 // DATA
74 Token_Receiver & rReceiver;
75 TkpContext * pFollowUpContext;
76 Dyn<Token> pNewToken;
81 /**
82 @descr
85 class Context_MLComment : public Cx_Base
87 public:
88 Context_MLComment(
89 Token_Receiver & o_rReceiver,
90 TkpContext & i_rFollowUpContext )
91 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
92 virtual void ReadCharChain(
93 CharacterSource & io_rText );
96 class Context_SLComment : public Cx_Base
98 public:
99 Context_SLComment(
100 Token_Receiver & o_rReceiver,
101 TkpContext & i_rFollowUpContext )
102 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
103 virtual void ReadCharChain(
104 CharacterSource & io_rText );
107 class Context_Praeprocessor : public Cx_Base
109 public:
110 Context_Praeprocessor(
111 Token_Receiver & o_rReceiver,
112 TkpContext & i_rFollowUpContext )
113 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
114 virtual void ReadCharChain(
115 CharacterSource & io_rText );
118 class Context_Assignment : public Cx_Base
120 public:
121 Context_Assignment(
122 Token_Receiver & o_rReceiver,
123 TkpContext & i_rFollowUpContext )
124 : Cx_Base(o_rReceiver, i_rFollowUpContext) {}
125 virtual void ReadCharChain(
126 CharacterSource & io_rText );
130 } // namespace uidl
131 } // namespace csi
133 #endif