dom/xslt/xslt/txUnknownHandler.h
author Nicholas Nethercote <nnethercote@mozilla.com>
Tue, 20 Jun 2017 19:19:52 +1000
changeset 365759 6352096eb0de303cba9440092279e4254a1ec586
parent 202921 ca7fdf3bb3720d95bded02e7bdc747680dba286e
child 448947 6f3709b3878117466168c40affa7bca0b60cf75b
permissions -rw-r--r--
Bug 1374580 (part 3) - Remove ns{,C}Substring typedefs. r=froydnj. All the instances are converted as follows. - nsSubstring --> nsAString - nsCSubstring --> nsACString

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* 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/. */

#ifndef txUnknownHandler_h___
#define txUnknownHandler_h___

#include "txBufferingHandler.h"
#include "txOutputFormat.h"

class txExecutionState;

class txUnknownHandler : public txBufferingHandler
{
public:
    explicit txUnknownHandler(txExecutionState* aEs);
    virtual ~txUnknownHandler();

    TX_DECL_TXAXMLEVENTHANDLER

private:
    nsresult createHandlerAndFlush(bool aHTMLRoot,
                                   const nsAString& aName,
                                   const int32_t aNsID);

    /*
     * XXX we shouldn't hold to the txExecutionState, as we're supposed
     * to live without it. But as a standalone handler, we don't.
     * The right fix may need a txOutputFormat here.
     */
    txExecutionState* mEs;

    // If mFlushed is true then we've replaced mEs->mResultHandler with a
    // different handler and we should forward to that handler.
    bool mFlushed;
};

#endif /* txUnknownHandler_h___ */