1234567891011121314151617181920212223242526272829303132333435363738394041 |
- // © 2016 and later: Unicode, Inc. and others.
- // License & terms of use: http://www.unicode.org/copyright.html
- /*
- ******************************************************************************
- * Copyright (C) 2014, International Business Machines
- * Corporation and others. All Rights Reserved.
- ******************************************************************************
- * sharednumberformat.h
- */
- #ifndef __SHARED_NUMBERFORMAT_H__
- #define __SHARED_NUMBERFORMAT_H__
- #include "unicode/utypes.h"
- #include "sharedobject.h"
- #include "unifiedcache.h"
- U_NAMESPACE_BEGIN
- class NumberFormat;
- class U_I18N_API SharedNumberFormat : public SharedObject {
- public:
- SharedNumberFormat(NumberFormat *nfToAdopt) : ptr(nfToAdopt) { }
- virtual ~SharedNumberFormat();
- const NumberFormat *get() const { return ptr; }
- const NumberFormat *operator->() const { return ptr; }
- const NumberFormat &operator*() const { return *ptr; }
- private:
- NumberFormat *ptr;
- SharedNumberFormat(const SharedNumberFormat &) = delete;
- SharedNumberFormat &operator=(const SharedNumberFormat &) = delete;
- };
- template<> U_I18N_API
- const SharedNumberFormat *LocaleCacheKey<SharedNumberFormat>::createObject(
- const void * /*unused*/, UErrorCode &status) const;
- U_NAMESPACE_END
- #endif
|