Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /* This Source Code Form is subject to the terms of the Mozilla Public
3 : * License, v. 2.0. If a copy of the MPL was not distributed with this
4 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 :
6 : #include "txToplevelItems.h"
7 :
8 : #include "mozilla/Move.h"
9 : #include "txStylesheet.h"
10 : #include "txInstructions.h"
11 : #include "txXSLTPatterns.h"
12 :
13 : using mozilla::Move;
14 :
15 0 : TX_IMPL_GETTYPE(txAttributeSetItem, txToplevelItem::attributeSet)
16 0 : TX_IMPL_GETTYPE(txImportItem, txToplevelItem::import)
17 0 : TX_IMPL_GETTYPE(txOutputItem, txToplevelItem::output)
18 0 : TX_IMPL_GETTYPE(txDummyItem, txToplevelItem::dummy)
19 :
20 0 : TX_IMPL_GETTYPE(txStripSpaceItem, txToplevelItem::stripSpace)
21 :
22 0 : txStripSpaceItem::~txStripSpaceItem()
23 : {
24 0 : int32_t i, count = mStripSpaceTests.Length();
25 0 : for (i = 0; i < count; ++i) {
26 0 : delete mStripSpaceTests[i];
27 : }
28 0 : }
29 :
30 : nsresult
31 0 : txStripSpaceItem::addStripSpaceTest(txStripSpaceTest* aStripSpaceTest)
32 : {
33 0 : if (!mStripSpaceTests.AppendElement(aStripSpaceTest)) {
34 0 : return NS_ERROR_OUT_OF_MEMORY;
35 : }
36 :
37 0 : return NS_OK;
38 : }
39 :
40 0 : TX_IMPL_GETTYPE(txTemplateItem, txToplevelItem::templ)
41 :
42 0 : txTemplateItem::txTemplateItem(nsAutoPtr<txPattern>&& aMatch,
43 : const txExpandedName& aName,
44 0 : const txExpandedName& aMode, double aPrio)
45 0 : : mMatch(Move(aMatch)), mName(aName),
46 0 : mMode(aMode), mPrio(aPrio)
47 : {
48 0 : }
49 :
50 0 : TX_IMPL_GETTYPE(txVariableItem, txToplevelItem::variable)
51 :
52 0 : txVariableItem::txVariableItem(const txExpandedName& aName,
53 : nsAutoPtr<Expr>&& aValue,
54 0 : bool aIsParam)
55 0 : : mName(aName), mValue(Move(aValue)),
56 0 : mIsParam(aIsParam)
57 : {
58 0 : }
|