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: docu_pe.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_DOCU_PE_HXX
32 #define ADC_DOCU_PE_HXX
38 #include <adoc/tokintpr.hxx>
60 class Adoc_PE
: public TokenInterpreter
66 virtual void Hdl_at_std(
67 const Tok_at_std
& i_rTok
);
68 virtual void Hdl_at_base(
69 const Tok_at_base
& i_rTok
);
70 virtual void Hdl_at_exception(
71 const Tok_at_exception
&
73 virtual void Hdl_at_impl(
74 const Tok_at_impl
& i_rTok
);
75 virtual void Hdl_at_key(
76 const Tok_at_key
& i_rTok
);
77 virtual void Hdl_at_param(
80 virtual void Hdl_at_see(
81 const Tok_at_see
& i_rTok
);
82 virtual void Hdl_at_template(
83 const Tok_at_template
&
85 virtual void Hdl_at_interface(
86 const Tok_at_interface
&
88 virtual void Hdl_at_internal(
89 const Tok_at_internal
&
91 virtual void Hdl_at_obsolete(
92 const Tok_at_obsolete
&
94 virtual void Hdl_at_module(
97 virtual void Hdl_at_file(
98 const Tok_at_file
& i_rTok
);
99 virtual void Hdl_at_gloss(
102 virtual void Hdl_at_global(
103 const Tok_at_global
&
105 virtual void Hdl_at_include(
106 const Tok_at_include
&
108 virtual void Hdl_at_label(
111 virtual void Hdl_at_since(
114 virtual void Hdl_at_HTML(
117 virtual void Hdl_at_NOHTML(
118 const Tok_at_NOHTML
&
121 virtual void Hdl_DocWord(
122 const Tok_DocWord
& i_rTok
);
124 virtual void Hdl_Whitespace(
125 const Tok_Whitespace
&
127 virtual void Hdl_LineStart(
128 const Tok_LineStart
&
130 virtual void Hdl_Eol(
131 const Tok_Eol
& i_rTok
);
133 virtual void Hdl_EoDocu(
134 const Tok_EoDocu
& i_rTok
);
137 DYN
ary::doc::OldCppDocu
*
138 ReleaseJustParsedDocu();
140 bool IsComplete() const;
144 DYN
ary::info::AtTag
*
146 bool i_bImplicit
= false ); /// True for implicit @short and @descr.
147 ary::doc::OldCppDocu
&
149 ary::info::AtTag
& CurAtTag();
150 bool UsesHtmlInDocuText();
152 void RenameCurShortTag();
153 void FinishCurShortTag();
164 ds_wait_for_short
= 0,
166 ds_1newline_after_short
,
171 Dyn
<ary::doc::OldCppDocu
>
173 ary::info::AtTag
* pCurAtTag
;
174 uintt nLineCountInDocu
;
175 UINT8 nCurSpecialMeaningTokens
;
176 UINT8 nCurSubtractFromLineStart
;
177 E_TagState eCurTagState
;
178 E_DocuState eDocuState
;
180 bool bUsesHtmlInDocuText
;
186 Adoc_PE::IsComplete() const