1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* 3 * This file is part of the libetonyek project. 4 * 5 * This Source Code Form is subject to the terms of the Mozilla Public 6 * License, v. 2.0. If a copy of the MPL was not distributed with this 7 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 8 */ 9 10 #ifndef PAG1XMLCONTEXTBASE_H_INCLUDED 11 #define PAG1XMLCONTEXTBASE_H_INCLUDED 12 13 #include "IWORKXMLContextBase.h" 14 15 namespace libetonyek 16 { 17 18 class PAG1ParserState; 19 class PAGCollector; 20 21 template<class Base> 22 class PAG1XMLContextBase : public IWORKXMLContextBase<Base, PAG1ParserState, PAGCollector> 23 { 24 typedef IWORKXMLContextBase<Base, PAG1ParserState, PAGCollector> Parent_t; 25 26 public: PAG1XMLContextBase(PAG1ParserState & state)27 explicit PAG1XMLContextBase(PAG1ParserState &state) 28 : Parent_t(state) 29 { 30 } 31 32 template<typename T1> PAG1XMLContextBase(PAG1ParserState & state,T1 arg1)33 PAG1XMLContextBase(PAG1ParserState &state, T1 arg1) 34 : Parent_t(state, arg1) 35 { 36 } 37 }; 38 39 typedef PAG1XMLContextBase<IWORKXMLContextElement> PAG1XMLElementContextBase; 40 typedef PAG1XMLContextBase<IWORKXMLContextText> PAG1XMLTextContextBase; 41 typedef PAG1XMLContextBase<IWORKXMLContextMixed> PAG1XMLixedContextBase; 42 typedef PAG1XMLContextBase<IWORKXMLContextEmpty> PAG1XMLEmptyContextBase; 43 44 } 45 46 #endif // PAG1XMLCONTEXTBASE_H_INCLUDED 47 48 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */ 49