|           Line data    Source code 
       1             : // -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
       2             : // vim: set ts=2 et sw=2 tw=80:
       3             : // This Source Code is subject to the terms of the Mozilla Public License
       4             : // version 2.0 (the "License"). You can obtain a copy of the License at
       5             : // http://mozilla.org/MPL/2.0/.
       6             : #ifndef nsTextToSubURI_h__
       7             : #define nsTextToSubURI_h__
       8             : 
       9             : #include "nsITextToSubURI.h"
      10             : #include "nsString.h"
      11             : #include "nsTArray.h"
      12             : 
      13           1 : class nsTextToSubURI: public nsITextToSubURI
      14             : {
      15             :   NS_DECL_ISUPPORTS
      16             :   NS_DECL_NSITEXTTOSUBURI
      17             : 
      18             : private:
      19             :   virtual ~nsTextToSubURI();
      20             : 
      21             :   // We assume that the URI is encoded as UTF-8.
      22             :   nsresult convertURItoUnicode(const nsCString& aCharset,
      23             :                                const nsCString& aURI,
      24             :                                nsAString &_retval);
      25             : 
      26             :   // Characters from the pref "network.IDN.blacklist_chars", or a built-in
      27             :   // fallback if reading the pref fails.
      28             :   nsTArray<char16_t> mUnsafeChars;
      29             : };
      30             : 
      31             : #endif // nsTextToSubURI_h__
 |