Bug 1669129 - [devtools] Enable devtools.overflow.debugging.enabled. r=jdescottes
[gecko.git] / intl / locale / Quotes.h
blob7bd7d277ca27fab6155931ae09cd552aa75fd6c9
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/. */
6 #ifndef mozilla_intl_Quotes_h__
7 #define mozilla_intl_Quotes_h__
9 #include "nsAtom.h"
11 namespace mozilla {
12 namespace intl {
14 // Currently, all the quotation characters provided by CLDR are single BMP
15 // codepoints, so they fit into char16_t fields. If there are ever multi-
16 // character strings or non-BMP codepoints in a future version, we'll need
17 // to extend this to a larger/more flexible structure, but for now it's
18 // deliberately kept simple and lightweight.
19 struct Quotes {
20 // Entries in order [open, close, alternativeOpen, alternativeClose]
21 char16_t mChars[4];
24 /**
25 * Return a pointer to the Quotes record for the given locale (lang attribute),
26 * or nullptr if none available.
27 * The returned value points to a hashtable entry, but will remain valid until
28 * shutdown begins, as the table is not modified after initialization.
30 const Quotes* QuotesForLang(const nsAtom* aLang);
32 } // namespace intl
33 } // namespace mozilla
35 #endif // mozilla_intl_Quotes_h__