diff options
Diffstat (limited to 'autodoc/source/parser/inc')
-rw-r--r-- | autodoc/source/parser/inc/tokens/parseinc.hxx | 196 | ||||
-rw-r--r-- | autodoc/source/parser/inc/tokens/stmstate.hxx | 58 | ||||
-rw-r--r-- | autodoc/source/parser/inc/tokens/tkpcontx.hxx | 129 | ||||
-rw-r--r-- | autodoc/source/parser/inc/tokens/tokdeal.hxx | 35 | ||||
-rw-r--r-- | autodoc/source/parser/inc/tokens/token.hxx | 59 | ||||
-rw-r--r-- | autodoc/source/parser/inc/tokens/tokproct.hxx | 76 | ||||
-rw-r--r-- | autodoc/source/parser/inc/x_docu.hxx | 52 |
7 files changed, 0 insertions, 605 deletions
diff --git a/autodoc/source/parser/inc/tokens/parseinc.hxx b/autodoc/source/parser/inc/tokens/parseinc.hxx deleted file mode 100644 index 56fd2fccd18f..000000000000 --- a/autodoc/source/parser/inc/tokens/parseinc.hxx +++ /dev/null @@ -1,196 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_PARSEINC_HXX -#define ADC_PARSEINC_HXX - - -#include <tools/tkpchars.hxx> - -inline char -jumpOver( CharacterSource & io_rText, - char in_c ) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - cNext == in_c; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpTo( CharacterSource & io_rText, - char in_c ) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - cNext != in_c AND cNext != 0; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpTo( CharacterSource & io_rText, - char in_c1, - char in_c2 ) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - cNext != in_c1 AND cNext != in_c2 AND cNext != 0; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpTo( CharacterSource & io_rText, - char in_c1, - char in_c2, - char in_c3 ) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - cNext != in_c1 AND cNext != in_c2 AND cNext != in_c3 AND cNext != 0; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpTo( CharacterSource & io_rText, - char in_c1, - char in_c2, - char in_c3, - char in_c4 ) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - cNext != in_c1 AND cNext != in_c2 AND cNext != in_c3 - AND cNext != in_c4 AND cNext != 0; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpOverWhite(CharacterSource & io_rText) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - static_cast<UINT8>(cNext) < 33 - AND cNext != 0 AND cNext != 13 AND cNext != 10; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpToWhite(CharacterSource & io_rText) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - static_cast<UINT8>(cNext) > 32; - cNext = io_rText.MoveOn() ) - { } - - return cNext; -} - -inline char -jumpToEol(CharacterSource & io_rText, int & o_rCount_BackslashedLineBreaks ) -{ - o_rCount_BackslashedLineBreaks = 0; - char cNext; - for ( cNext = io_rText.CurChar(); - cNext != 13 AND cNext != 10 AND cNext != NULCH; - cNext = io_rText.MoveOn() ) - { - if ( cNext == '\\') - { - cNext = io_rText.MoveOn(); - if ( cNext == 13 ) - io_rText.MoveOn(); - if ( cNext == 10 ) - ++o_rCount_BackslashedLineBreaks; - } - } - return cNext; -} - -inline char -jumpToEol(CharacterSource & io_rText) -{ - char cNext; - for ( cNext = io_rText.CurChar(); - cNext != 13 AND cNext != 10 AND cNext != NULCH; - cNext = io_rText.MoveOn() ) - { - if ( cNext == '\\') - io_rText.MoveOn(); - } - return cNext; -} - -inline char -jumpOverEol(CharacterSource & io_rText) -{ - char cNext = io_rText.CurChar(); - - if (cNext == 13) - io_rText.MoveOn(); - if (cNext == 10) - io_rText.MoveOn(); - return cNext; -} - - -inline char // Finds a matching closing bracket after the opening one is passed -jumpToMatchingBracket( CharacterSource & io_rText, - char in_cBegin, - char in_cEnd ) -{ - intt nCounter = 1; - char cNext; - for ( cNext = io_rText.CurChar(); - nCounter - (cNext == in_cEnd ? 1 : 0) > 0 AND cNext != NULCH; - cNext = io_rText.MoveOn() ) - { - if (cNext == in_cEnd) - nCounter++; - else if (cNext == in_cBegin) - nCounter--; - } - - return cNext; -} - - - - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/parser/inc/tokens/stmstate.hxx b/autodoc/source/parser/inc/tokens/stmstate.hxx deleted file mode 100644 index 02470439e08e..000000000000 --- a/autodoc/source/parser/inc/tokens/stmstate.hxx +++ /dev/null @@ -1,58 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_STMSTATE_HXX -#define ADC_STMSTATE_HXX - -// USED SERVICES - // BASE CLASSES - // COMPONENTS - // PARAMETERS -class StmArrayStatus; - -/** A StmStatus is a state within a StateMachine. - There are two kinds of it. Either its an array of pointers to - other states within the state machine - an ArrayStatus. - - Or it is a BoundsStatus, which shows, the token cannot be - followed further within the StateMachine. -**/ -class StmStatus // := "State machine status" -{ - public: - typedef intt Branch; /// Values >= 0 give a next #Status' ID. - /// Values <= 0 tell, that a token is finished. - /// a value < 0 returns the status back to an upper level state machine. - // LIFECYCLE - virtual ~StmStatus() {} - - // OPERATIONS - virtual StmArrayStatus * - AsArray(); - - // INQUIRY - virtual bool IsADefault() const = 0; -}; - - - -#endif - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/parser/inc/tokens/tkpcontx.hxx b/autodoc/source/parser/inc/tokens/tkpcontx.hxx deleted file mode 100644 index 7d2e53a6da6e..000000000000 --- a/autodoc/source/parser/inc/tokens/tkpcontx.hxx +++ /dev/null @@ -1,129 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_TKPCONTX_HXX -#define ADC_TKPCONTX_HXX - -// USED SERVICES - // BASE CLASSES - // COMPONENTS - // PARAMETERS -#include <tokens/token.hxx> -class CharacterSource; -class TkpNullContext; - -/** @task - Specifies a context within which tokens are interpreted in a special - way. For example in parsing C++ there could be a context for code, - one for comments and a third one for preprocessor statements, because - each of these would give the same token different meanings. - - The three functions - ReadCharChain() - PassNewToken() - FollowUpContext() - have to be called in this sequence. - -**/ -class TkpContext -{ - public: - // LIFECYCLE - virtual ~TkpContext() {} - - // OPERATIONS - /** @descr - The functions starts to parse with the CurChar() of io_rText. - It leaves io_rText.CurChar() at the first char of the following Token or - the following Context. - - This function returns, when a context has parsed some characterss - and completed a token OR left the context. - If the token is to be ignored, it is cut from io_rText. - - If the token is to be parsed further in a different context, - it is NOT cut from io_rText. - - After this function PassNewToken() has to be called. - - If the function has found a valid and complete token, PassNewToken() - passes the parsed token to the internally known receiver and - returns true. The token is cut from io_rText. - **/ - virtual void ReadCharChain( - CharacterSource & io_rText ) = 0; - /** Has to pass the parsed token to a known receiver. - If the token is to be parsed further in a different context, - PassNewToken() returns false, but the token is NOT cut from io_rText. - - @return true, if a token was passed. - false, if the token was not parsed completely by this context - or if the token is to be ignored. - */ - virtual bool PassNewToken() = 0; - virtual TkpContext & - FollowUpContext() = 0; -}; - -class StateMachineContext -{ - public: - typedef TextToken::F_CRTOK F_CRTOK; - - virtual ~StateMachineContext() {} - - virtual void PerformStatusFunction( - uintt i_nStatusSignal, - F_CRTOK i_fTokenCreateFunction, - CharacterSource & io_rText ) = 0; -}; - -class TkpNullContext : public TkpContext -{ - public: - ~TkpNullContext(); - - virtual void ReadCharChain( - CharacterSource & io_rText ); - virtual bool PassNewToken(); - virtual TkpContext & - FollowUpContext(); -}; - -namespace autodoc -{ - -class TkpDocuContext : public TkpContext -{ - public: - virtual void SetParentContext( - TkpContext & io_rParentContext, - const char * i_sMultiLineEndToken ) = 0; - virtual void AssignDealer( - TokenDealer & o_rDealer ) = 0; - virtual void SetMode_IsMultiLine( - bool i_bTrue ) = 0; -}; - -} // namespace autodoc - -#endif - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/parser/inc/tokens/tokdeal.hxx b/autodoc/source/parser/inc/tokens/tokdeal.hxx deleted file mode 100644 index e772f9dc95ee..000000000000 --- a/autodoc/source/parser/inc/tokens/tokdeal.hxx +++ /dev/null @@ -1,35 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_TOKDEAL_HXX -#define ADC_TOKDEAL_HXX - -class TokenDealer - -{ - public: - virtual ~TokenDealer() {} - - virtual void Deal_Eol() = 0; - virtual void Deal_Eof() = 0; -}; - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/parser/inc/tokens/token.hxx b/autodoc/source/parser/inc/tokens/token.hxx deleted file mode 100644 index 520991a7c4a2..000000000000 --- a/autodoc/source/parser/inc/tokens/token.hxx +++ /dev/null @@ -1,59 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_TOKEN_HXX -#define ADC_TOKEN_HXX - -// USED SERVICES - // BASE CLASSES - // COMPONENTS - // PARAMETRS - - -class TokenDealer; - -/** -*/ -class TextToken -{ - public: - typedef TextToken * (*F_CRTOK)(const char*); - - // LIFECYCLE - virtual ~TextToken() {} - - - // INQUIRY - virtual const char* Text() const = 0; - - virtual void DealOut( - ::TokenDealer & o_rDealer ) = 0; -}; - -class Tok_Eof : public TextToken -{ - virtual void DealOut( // Implemented in tokdeal.cxx - TokenDealer & o_rDealer ); - virtual const char* Text() const; -}; - -#endif - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/parser/inc/tokens/tokproct.hxx b/autodoc/source/parser/inc/tokens/tokproct.hxx deleted file mode 100644 index f0f0ec35400b..000000000000 --- a/autodoc/source/parser/inc/tokens/tokproct.hxx +++ /dev/null @@ -1,76 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_CPP_TOKPROCT_HXX -#define ADC_CPP_TOKPROCT_HXX - - - -// USED SERVICES - // BASE CLASSES - // COMPONENTS - // PARAMETERS - - -class ParseEnvironment; - -/** is a parent class for classes, which take part in parsing tokens semantically. - It provides some types for them. -*/ -class TokenProcessing_Types -{ - public: - enum E_TokenDone - { - not_done = 0, - done = 1 - }; - - enum E_EnvStackAction - { - stay, // same parse environment - push, // push sub environment - pop_success, // return to parent environment, parsing was successful - pop_failure // return to parent environment, but an error occurred. - }; - - struct TokenProcessing_Result - { - E_TokenDone eDone; - E_EnvStackAction eStackAction; - ParseEnvironment * pEnv2Push; - - TokenProcessing_Result() - : eDone(not_done), eStackAction(stay), pEnv2Push(0) {} - void Reset() { eDone = not_done; eStackAction = stay; pEnv2Push = 0; } - }; - - enum E_ParseResult - { - res_error, - res_complete, - res_predeclaration - }; -}; - - - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/autodoc/source/parser/inc/x_docu.hxx b/autodoc/source/parser/inc/x_docu.hxx deleted file mode 100644 index 76bd1aa7fe9d..000000000000 --- a/autodoc/source/parser/inc/x_docu.hxx +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef ADC_X_DOCU_HXX -#define ADC_X_DOCU_HXX - -// BASE CLASSES -#include <autodoc/x_parsing.hxx> - - - - -class X_Docu : public autodoc::X_Parser_Ifc -{ - public: - // LIFECYCLE - X_Docu( - const char * i_tag, - const char * i_explanation ); - ~X_Docu(); - // INQUIRY - virtual E_Event GetEvent() const; - virtual void GetInfo( - std::ostream & o_rOutputMedium ) const; - - private: - String sTagName; - String sExplanation; -}; - - - - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |