1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
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/. */
12 #ifndef __NSITOKENIZER__
13 #define __NSITOKENIZER__
15 #include "nsISupports.h"
19 #define NS_ITOKENIZER_IID \
21 0Xae98a348, 0X5e91, 0X41a8, { \
22 0Xa5, 0Xb4, 0Xd2, 0X20, 0Xf3, 0X1f, 0Xc4, 0Xab \
26 /***************************************************************
28 ***************************************************************/
30 class nsITokenizer
: public nsISupports
{
32 NS_DECLARE_STATIC_IID_ACCESSOR(NS_ITOKENIZER_IID
)
34 NS_IMETHOD
WillTokenize(bool aIsFinalChunk
) = 0;
35 NS_IMETHOD
ConsumeToken(nsScanner
& aScanner
, bool& aFlushTokens
) = 0;
38 NS_DEFINE_STATIC_IID_ACCESSOR(nsITokenizer
, NS_ITOKENIZER_IID
)
40 #define NS_DECL_NSITOKENIZER \
41 NS_IMETHOD WillTokenize(bool aIsFinalChunk) override; \
42 NS_IMETHOD ConsumeToken(nsScanner& aScanner, bool& aFlushTokens) override;