intl/locale/nsLocale.h
author ffxbld <release@mozilla.com>
Mon, 29 Jun 2015 13:13:28 -0700
changeset 275215 9d83ab013ab61c7f6e987bf0e7cbab1a1aed1ca8
parent 218934 b79894a533bcd2c5b742f55e0de9eff40d8b86c3
child 418830 6a629adbb62a299d7208373d1c6f375149d2afdb
permissions -rw-r--r--
No bug - Tagging mozilla-aurora d77cf3926884 with FIREFOX_BETA_40_BASE a=release DONTBUILD CLOSED TREE

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
 *
 * 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/.
 *
 *
 * This Original Code has been modified by IBM Corporation.
 * Modifications made by IBM described herein are
 * Copyright (c) International Business Machines
 * Corporation, 2000
 *
 * Modifications to Mozilla code or documentation
 * identified per MPL Section 3.3
 *
 * Date         Modified by     Description of modification
 * 03/27/2000   IBM Corp.       Added PR_CALLBACK for Optlink
 *                               use in OS2
 */
#ifndef nsLocale_h__
#define nsLocale_h__

#include "nsStringFwd.h"
#include "nsILocale.h"
#include "plhash.h"

class nsLocale : public nsILocale {
	friend class nsLocaleService;
	NS_DECL_THREADSAFE_ISUPPORTS

public:
	nsLocale(void);
	
	/* Declare methods from nsILocale */
	NS_DECL_NSILOCALE

protected:
	
	NS_IMETHOD AddCategory(const nsAString& category, const nsAString& value);

	static PLHashNumber Hash_HashFunction(const void* key);
	static int Hash_CompareNSString(const void* s1, const void* s2);
	static int Hash_EnumerateDelete(PLHashEntry *he, int hashIndex, void *arg);

	PLHashTable*	fHashtable;
	uint32_t		fCategoryCount;

        virtual ~nsLocale(void);
};


#endif