Coverage Report

Created: 2025-06-24 06:43

/src/icu/source/common/unicode/localpointer.h
Line
Count
Source (jump to first uncovered line)
1
// © 2016 and later: Unicode, Inc. and others.
2
// License & terms of use: http://www.unicode.org/copyright.html
3
/*
4
*******************************************************************************
5
*
6
*   Copyright (C) 2009-2016, International Business Machines
7
*   Corporation and others.  All Rights Reserved.
8
*
9
*******************************************************************************
10
*   file name:  localpointer.h
11
*   encoding:   UTF-8
12
*   tab size:   8 (not used)
13
*   indentation:4
14
*
15
*   created on: 2009nov13
16
*   created by: Markus W. Scherer
17
*/
18
19
#ifndef __LOCALPOINTER_H__
20
#define __LOCALPOINTER_H__
21
22
/**
23
 * \file
24
 * \brief C++ API: "Smart pointers" for use with and in ICU4C C++ code.
25
 *
26
 * These classes are inspired by
27
 * - std::auto_ptr
28
 * - boost::scoped_ptr & boost::scoped_array
29
 * - Taligent Safe Pointers (TOnlyPointerTo)
30
 *
31
 * but none of those provide for all of the goals for ICU smart pointers:
32
 * - Smart pointer owns the object and releases it when it goes out of scope.
33
 * - No transfer of ownership via copy/assignment to reduce misuse. Simpler & more robust.
34
 * - ICU-compatible: No exceptions.
35
 * - Need to be able to orphan/release the pointer and its ownership.
36
 * - Need variants for normal C++ object pointers, C++ arrays, and ICU C service objects.
37
 *
38
 * For details see http://site.icu-project.org/design/cpp/scoped_ptr
39
 */
40
41
#include "unicode/utypes.h"
42
43
#if U_SHOW_CPLUSPLUS_API
44
45
#include <memory>
46
47
U_NAMESPACE_BEGIN
48
49
/**
50
 * "Smart pointer" base class; do not use directly: use LocalPointer etc.
51
 *
52
 * Base class for smart pointer classes that do not throw exceptions.
53
 *
54
 * Do not use this base class directly, since it does not delete its pointer.
55
 * A subclass must implement methods that delete the pointer:
56
 * Destructor and adoptInstead().
57
 *
58
 * There is no operator T *() provided because the programmer must decide
59
 * whether to use getAlias() (without transfer of ownership) or orphan()
60
 * (with transfer of ownership and NULLing of the pointer).
61
 *
62
 * @see LocalPointer
63
 * @see LocalArray
64
 * @see U_DEFINE_LOCAL_OPEN_POINTER
65
 * @stable ICU 4.4
66
 */
67
template<typename T>
68
class LocalPointerBase {
69
public:
70
    // No heap allocation. Use only on the stack.
71
    static void* U_EXPORT2 operator new(size_t) = delete;
72
    static void* U_EXPORT2 operator new[](size_t) = delete;
73
#if U_HAVE_PLACEMENT_NEW
74
    static void* U_EXPORT2 operator new(size_t, void*) = delete;
75
#endif
76
77
    /**
78
     * Constructor takes ownership.
79
     * @param p simple pointer to an object that is adopted
80
     * @stable ICU 4.4
81
     */
82
0
    explicit LocalPointerBase(T *p=NULL) : ptr(p) {}
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Norm2AllModes>::LocalPointerBase(icu_70::Norm2AllModes*)
Unexecuted instantiation: icu_70::LocalPointerBase<UKeywordsContext>::LocalPointerBase(UKeywordsContext*)
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::LocalPointerBase(UEnumeration*)
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::LocalPointerBase(UResourceBundle*)
Unexecuted instantiation: icu_70::LocalPointerBase<UHashtable>::LocalPointerBase(UHashtable*)
Unexecuted instantiation: icu_70::LocalPointerBase<ULanguageTag>::LocalPointerBase(ULanguageTag*)
Unexecuted instantiation: umutablecptrie.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::MutableCodePointTrie>::LocalPointerBase(icu_70::(anonymous namespace)::MutableCodePointTrie*)
Unexecuted instantiation: icu_70::LocalPointerBase<char const*>::LocalPointerBase(char const**)
Unexecuted instantiation: icu_70::LocalPointerBase<int>::LocalPointerBase(int*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CharString>::LocalPointerBase(icu_70::CharString*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::LocalPointerBase(icu_70::StringEnumeration*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::LocalPointerBase(icu_70::CollationTailoring*)
Unexecuted instantiation: icu_70::LocalPointerBase<unsigned char>::LocalPointerBase(unsigned char*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimePatternGenerator>::LocalPointerBase(icu_70::DateTimePatternGenerator*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateFmtBestPattern>::LocalPointerBase(icu_70::DateFmtBestPattern*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Calendar>::LocalPointerBase(icu_70::Calendar*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateFormat>::LocalPointerBase(icu_70::DateFormat*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector>::LocalPointerBase(icu_70::UVector*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString>::LocalPointerBase(icu_70::UnicodeString*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem>::LocalPointerBase(icu_70::NumberingSystem*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Hashtable>::LocalPointerBase(icu_70::Hashtable*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnElem>::LocalPointerBase(icu_70::PtnElem*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimeMatcher>::LocalPointerBase(icu_70::DateTimeMatcher*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnSkeleton>::LocalPointerBase(icu_70::PtnSkeleton*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalQuantity>::LocalPointerBase(icu_70::number::impl::DecimalQuantity*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Region>::LocalPointerBase(icu_70::Region*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::LocalPointerBase(icu_70::UnicodeSet*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SimpleDateFormat::NSOverride>::LocalPointerBase(icu_70::SimpleDateFormat::NSOverride*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberFormat>::LocalPointerBase(icu_70::NumberFormat*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::LocalPointerBase(icu_70::DecimalFormat*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneFormat>::LocalPointerBase(icu_70::TimeZoneFormat*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames>::LocalPointerBase(icu_70::TimeZoneNames*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames::MatchInfoCollection>::LocalPointerBase(icu_70::TimeZoneNames::MatchInfoCollection*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ZoneIdMatchHandler>::LocalPointerBase(icu_70::ZoneIdMatchHandler*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZone>::LocalPointerBase(icu_70::TimeZone*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules>::LocalPointerBase(icu_70::PluralRules*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::LocalPointerBase(icu_70::CurrencyPluralInfo*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols const>::LocalPointerBase(icu_70::DecimalFormatSymbols const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols>::LocalPointerBase(icu_70::DecimalFormatSymbols*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyAmount>::LocalPointerBase(icu_70::CurrencyAmount*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Format>::LocalPointerBase(icu_70::Format*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Formattable>::LocalPointerBase(icu_70::Formattable*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LocalizedNumberFormatterAsFormat>::LocalPointerBase(icu_70::number::impl::LocalizedNumberFormatterAsFormat*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::UnlocalizedNumberFormatter>::LocalPointerBase(icu_70::number::UnlocalizedNumberFormatter*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::LocalizedNumberFormatter>::LocalPointerBase(icu_70::number::LocalizedNumberFormatter*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalFormatWarehouse>::LocalPointerBase(icu_70::number::impl::DecimalFormatWarehouse*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ListFormatter>::LocalPointerBase(icu_70::ListFormatter*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UsagePrefsHandler const>::LocalPointerBase(icu_70::number::impl::UsagePrefsHandler const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UnitConversionHandler const>::LocalPointerBase(icu_70::number::impl::UnitConversionHandler const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules const>::LocalPointerBase(icu_70::PluralRules const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ParsedPatternInfo const>::LocalPointerBase(icu_70::number::impl::ParsedPatternInfo const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ScientificHandler const>::LocalPointerBase(icu_70::number::impl::ScientificHandler const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::MutablePatternModifier>::LocalPointerBase(icu_70::number::impl::MutablePatternModifier*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ImmutablePatternModifier>::LocalPointerBase(icu_70::number::impl::ImmutablePatternModifier*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameHandler>::LocalPointerBase(icu_70::number::impl::LongNameHandler*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::MixedUnitLongNameHandler>::LocalPointerBase(icu_70::number::impl::MixedUnitLongNameHandler*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer const>::LocalPointerBase(icu_70::number::impl::LongNameMultiplexer const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::CompactHandler const>::LocalPointerBase(icu_70::number::impl::CompactHandler const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem const>::LocalPointerBase(icu_70::NumberingSystem const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::MeasureUnit>::LocalPointerBase(icu_70::MeasureUnit*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer>::LocalPointerBase(icu_70::number::impl::LongNameMultiplexer*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecNum>::LocalPointerBase(icu_70::number::impl::DecNum*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::AdoptingModifierStore>::LocalPointerBase(icu_70::number::impl::AdoptingModifierStore*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::units::ComplexUnitsConverter>::LocalPointerBase(icu_70::units::ComplexUnitsConverter*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet const>::LocalPointerBase(icu_70::UnicodeSet const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString const>::LocalPointerBase(icu_70::UnicodeString const*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::numparse::impl::NumberParserImpl>::LocalPointerBase(icu_70::numparse::impl::NumberParserImpl*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SharedPluralRules>::LocalPointerBase(icu_70::SharedPluralRules*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector32>::LocalPointerBase(icu_70::UVector32*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NFRule>::LocalPointerBase(icu_70::NFRule*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationDataBuilder>::LocalPointerBase(icu_70::CollationDataBuilder*)
Unexecuted instantiation: listformatter.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::PatternHandler>::LocalPointerBase(icu_70::(anonymous namespace)::PatternHandler*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FormattedListData>::LocalPointerBase(icu_70::FormattedListData*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationElementIterator>::LocalPointerBase(icu_70::CollationElementIterator*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StandardPluralRanges>::LocalPointerBase(icu_70::StandardPluralRanges*)
Unexecuted instantiation: icu_70::LocalPointerBase<UText>::LocalPointerBase(UText*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrie>::LocalPointerBase(icu_70::UCharsTrie*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::BreakIterator>::LocalPointerBase(icu_70::BreakIterator*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrieBuilder>::LocalPointerBase(icu_70::UCharsTrieBuilder*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FilteredBreakIteratorBuilder>::LocalPointerBase(icu_70::FilteredBreakIteratorBuilder*)
Unexecuted instantiation: locavailable.cpp:icu_70::LocalPointerBase<(anonymous namespace)::AvailableLocalesStringEnumeration>::LocalPointerBase((anonymous namespace)::AvailableLocalesStringEnumeration*)
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UObject>::LocalPointerBase(icu_70::UObject*)
Unexecuted instantiation: icu_70::LocalPointerBase<UMutableCPTrie>::LocalPointerBase(UMutableCPTrie*)
83
    /**
84
     * Destructor deletes the object it owns.
85
     * Subclass must override: Base class does nothing.
86
     * @stable ICU 4.4
87
     */
88
0
    ~LocalPointerBase() { /* delete ptr; */ }
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Norm2AllModes>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<UKeywordsContext>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<UHashtable>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<ULanguageTag>::~LocalPointerBase()
Unexecuted instantiation: umutablecptrie.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::MutableCodePointTrie>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<int>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<char const*>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CharString>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<unsigned char>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateFmtBestPattern>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimePatternGenerator>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Calendar>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateFormat>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Hashtable>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnElem>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimeMatcher>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnSkeleton>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalQuantity>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Region>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::LocalizedNumberFormatter>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SimpleDateFormat::NSOverride>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberFormat>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneFormat>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames::MatchInfoCollection>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ZoneIdMatchHandler>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZone>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyAmount>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Format>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Formattable>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LocalizedNumberFormatterAsFormat>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::CompactHandler const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::MixedUnitLongNameHandler>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameHandler>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ImmutablePatternModifier>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::MutablePatternModifier>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ScientificHandler const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ParsedPatternInfo const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UnitConversionHandler const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UsagePrefsHandler const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalFormatWarehouse>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ListFormatter>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::MeasureUnit>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecNum>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::AdoptingModifierStore>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::units::ComplexUnitsConverter>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet const>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::numparse::impl::NumberParserImpl>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StandardPluralRanges>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SharedPluralRules>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector32>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NFRule>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationDataBuilder>::~LocalPointerBase()
Unexecuted instantiation: listformatter.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::PatternHandler>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FormattedListData>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationElementIterator>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<UText>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrie>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::BreakIterator>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrieBuilder>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FilteredBreakIteratorBuilder>::~LocalPointerBase()
Unexecuted instantiation: locavailable.cpp:icu_70::LocalPointerBase<(anonymous namespace)::AvailableLocalesStringEnumeration>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UObject>::~LocalPointerBase()
Unexecuted instantiation: icu_70::LocalPointerBase<UMutableCPTrie>::~LocalPointerBase()
89
    /**
90
     * NULL check.
91
     * @return true if ==NULL
92
     * @stable ICU 4.4
93
     */
94
0
    UBool isNull() const { return ptr==NULL; }
Unexecuted instantiation: icu_70::LocalPointerBase<UKeywordsContext>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<ULanguageTag>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CharString>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<unsigned char>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Calendar>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SimpleDateFormat::NSOverride>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames::MatchInfoCollection>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols const>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules const>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberFormat>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalQuantity>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<int>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationElementIterator>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString const>::isNull() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::isNull() const
95
    /**
96
     * NULL check.
97
     * @return true if !=NULL
98
     * @stable ICU 4.4
99
     */
100
0
    UBool isValid() const { return ptr!=NULL; }
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Calendar>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Format>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrie>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UObject>::isValid() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector32>::isValid() const
101
    /**
102
     * Comparison with a simple pointer, so that existing code
103
     * with ==NULL need not be changed.
104
     * @param other simple pointer for comparison
105
     * @return true if this pointer value equals other
106
     * @stable ICU 4.4
107
     */
108
    bool operator==(const T *other) const { return ptr==other; }
109
    /**
110
     * Comparison with a simple pointer, so that existing code
111
     * with !=NULL need not be changed.
112
     * @param other simple pointer for comparison
113
     * @return true if this pointer value differs from other
114
     * @stable ICU 4.4
115
     */
116
0
    bool operator!=(const T *other) const { return ptr!=other; }
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnElem>::operator!=(icu_70::PtnElem const*) const
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::operator!=(UResourceBundle const*) const
117
    /**
118
     * Access without ownership change.
119
     * @return the pointer value
120
     * @stable ICU 4.4
121
     */
122
0
    T *getAlias() const { return ptr; }
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Norm2AllModes>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<UHashtable>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<ULanguageTag>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<unsigned char>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnElem>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnSkeleton>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Region>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames::MatchInfoCollection>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ZoneIdMatchHandler>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UsagePrefsHandler const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UnitConversionHandler const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ScientificHandler const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ParsedPatternInfo const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::MixedUnitLongNameHandler>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameHandler>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::CompactHandler const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ImmutablePatternModifier>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules const>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<int>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<UText>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UObject>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::getAlias() const
Unexecuted instantiation: icu_70::LocalPointerBase<UMutableCPTrie>::getAlias() const
123
    /**
124
     * Access without ownership change.
125
     * @return the pointer value as a reference
126
     * @stable ICU 4.4
127
     */
128
0
    T &operator*() const { return *ptr; }
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnSkeleton>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimeMatcher>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalQuantity>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ParsedPatternInfo const>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::numparse::impl::NumberParserImpl>::operator*() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrie>::operator*() const
129
    /**
130
     * Access without ownership change.
131
     * @return the pointer value
132
     * @stable ICU 4.4
133
     */
134
0
    T *operator->() const { return ptr; }
Unexecuted instantiation: icu_70::LocalPointerBase<UKeywordsContext>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<ULanguageTag>::operator->() const
Unexecuted instantiation: umutablecptrie.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::MutableCodePointTrie>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CharString>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimePatternGenerator>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Calendar>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnSkeleton>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnElem>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimeMatcher>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Region>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SimpleDateFormat::NSOverride>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberFormat>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneFormat>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZoneNames::MatchInfoCollection>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ZoneIdMatchHandler>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols const>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalFormatWarehouse>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::ImmutablePatternModifier>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::MutablePatternModifier>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::UsagePrefsHandler const>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::ListFormatter>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecNum>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::AdoptingModifierStore>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::units::ComplexUnitsConverter>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::numparse::impl::NumberParserImpl>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SharedPluralRules>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationDataBuilder>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Hashtable>::operator->() const
Unexecuted instantiation: listformatter.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::PatternHandler>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FormattedListData>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationElementIterator>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::BreakIterator>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrieBuilder>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::operator->() const
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector32>::operator->() const
135
    /**
136
     * Gives up ownership; the internal pointer becomes NULL.
137
     * @return the pointer value;
138
     *         caller becomes responsible for deleting the object
139
     * @stable ICU 4.4
140
     */
141
0
    T *orphan() {
142
0
        T *p=ptr;
143
0
        ptr=NULL;
144
0
        return p;
145
0
    }
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Norm2AllModes>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UDataMemory>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<USet>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UNormalizer2>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UCPTrie>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UHashtable>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UMutableCPTrie>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UEnumeration>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UKeywordsContext>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UResourceBundle>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<ULanguageTag>::orphan()
Unexecuted instantiation: umutablecptrie.cpp:icu_70::LocalPointerBase<icu_70::(anonymous namespace)::MutableCodePointTrie>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UConverter>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UText>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UBreakIterator>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UCaseMap>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CharString>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UCollator>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationTailoring>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<void*>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UFieldPositionIterator>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<unsigned char>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateFmtBestPattern>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Calendar>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateFormat>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeString>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UPluralRules>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<int>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DateTimePatternGenerator>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Hashtable>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StringEnumeration>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PtnElem>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalQuantity>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UConstrainedFieldPosition>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UNumberFormatter>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UFormattedNumber>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberingSystem>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Region>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<URelativeDateTimeFormatter>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UFormattedRelativeDateTime>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::LocalizedNumberFormatter>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SimpleDateFormat::NSOverride>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NumberFormat>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<ULocaleDisplayNames>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::TimeZone>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyPluralInfo>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols const>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormatSymbols>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::DecimalFormat>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CurrencyAmount>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UListFormatter>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UFormattedList>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Format>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::Formattable>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LocalizedNumberFormatterAsFormat>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecimalFormatWarehouse>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::LongNameMultiplexer>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::number::impl::DecNum>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UNumberRangeFormatter>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<UFormattedNumberRange>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::numparse::impl::NumberParserImpl>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::PluralRules>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::StandardPluralRanges>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::SharedPluralRules>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UVector32>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::NFRule>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::CollationDataBuilder>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FormattedListData>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::BreakIterator>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UCharsTrie>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::FilteredBreakIteratorBuilder>::orphan()
Unexecuted instantiation: locavailable.cpp:icu_70::LocalPointerBase<(anonymous namespace)::AvailableLocalesStringEnumeration>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UObject>::orphan()
Unexecuted instantiation: icu_70::LocalPointerBase<icu_70::UnicodeSet>::orphan()
146
    /**
147
     * Deletes the object it owns,
148
     * and adopts (takes ownership of) the one passed in.
149
     * Subclass must override: Base class does not delete the object.
150
     * @param p simple pointer to an object that is adopted
151
     * @stable ICU 4.4
152
     */
153
    void adoptInstead(T *p) {
154
        // delete ptr;
155
        ptr=p;
156
    }
157
protected:
158
    /**
159
     * Actual pointer.
160
     * @internal
161
     */
162
    T *ptr;
163
private:
164
    // No comparison operators with other LocalPointerBases.
165
    bool operator==(const LocalPointerBase<T> &other);
166
    bool operator!=(const LocalPointerBase<T> &other);
167
    // No ownership sharing: No copy constructor, no assignment operator.
168
    LocalPointerBase(const LocalPointerBase<T> &other);
169
    void operator=(const LocalPointerBase<T> &other);
170
};
171
172
/**
173
 * "Smart pointer" class, deletes objects via the standard C++ delete operator.
174
 * For most methods see the LocalPointerBase base class.
175
 *
176
 * Usage example:
177
 * \code
178
 * LocalPointer<UnicodeString> s(new UnicodeString((UChar32)0x50005));
179
 * int32_t length=s->length();  // 2
180
 * char16_t lead=s->charAt(0);  // 0xd900
181
 * if(some condition) { return; }  // no need to explicitly delete the pointer
182
 * s.adoptInstead(new UnicodeString((char16_t)0xfffc));
183
 * length=s->length();  // 1
184
 * // no need to explicitly delete the pointer
185
 * \endcode
186
 *
187
 * @see LocalPointerBase
188
 * @stable ICU 4.4
189
 */
190
template<typename T>
191
class LocalPointer : public LocalPointerBase<T> {
192
public:
193
    using LocalPointerBase<T>::operator*;
194
    using LocalPointerBase<T>::operator->;
195
    /**
196
     * Constructor takes ownership.
197
     * @param p simple pointer to an object that is adopted
198
     * @stable ICU 4.4
199
     */
200
0
    explicit LocalPointer(T *p=NULL) : LocalPointerBase<T>(p) {}
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Norm2AllModes>::LocalPointer(icu_70::Norm2AllModes*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CharString>::LocalPointer(icu_70::CharString*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::StringEnumeration>::LocalPointer(icu_70::StringEnumeration*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CollationTailoring>::LocalPointer(icu_70::CollationTailoring*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateTimePatternGenerator>::LocalPointer(icu_70::DateTimePatternGenerator*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Calendar>::LocalPointer(icu_70::Calendar*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector>::LocalPointer(icu_70::UVector*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateTimeMatcher>::LocalPointer(icu_70::DateTimeMatcher*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnSkeleton>::LocalPointer(icu_70::PtnSkeleton*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnElem>::LocalPointer(icu_70::PtnElem*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeString>::LocalPointer(icu_70::UnicodeString*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet>::LocalPointer(icu_70::UnicodeSet*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::SimpleDateFormat::NSOverride>::LocalPointer(icu_70::SimpleDateFormat::NSOverride*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberFormat>::LocalPointer(icu_70::NumberFormat*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormat>::LocalPointer(icu_70::DecimalFormat*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZoneFormat>::LocalPointer(icu_70::TimeZoneFormat*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZoneNames>::LocalPointer(icu_70::TimeZoneNames*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZoneNames::MatchInfoCollection>::LocalPointer(icu_70::TimeZoneNames::MatchInfoCollection*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::ZoneIdMatchHandler>::LocalPointer(icu_70::ZoneIdMatchHandler*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZone>::LocalPointer(icu_70::TimeZone*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem>::LocalPointer(icu_70::NumberingSystem*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules>::LocalPointer(icu_70::PluralRules*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CurrencyPluralInfo>::LocalPointer(icu_70::CurrencyPluralInfo*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols const>::LocalPointer(icu_70::DecimalFormatSymbols const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols>::LocalPointer(icu_70::DecimalFormatSymbols*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Format>::LocalPointer(icu_70::Format*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::UnlocalizedNumberFormatter>::LocalPointer(icu_70::number::UnlocalizedNumberFormatter*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::LocalizedNumberFormatter>::LocalPointer(icu_70::number::LocalizedNumberFormatter*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::ListFormatter>::LocalPointer(icu_70::ListFormatter*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::UsagePrefsHandler const>::LocalPointer(icu_70::number::impl::UsagePrefsHandler const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::UnitConversionHandler const>::LocalPointer(icu_70::number::impl::UnitConversionHandler const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules const>::LocalPointer(icu_70::PluralRules const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ParsedPatternInfo const>::LocalPointer(icu_70::number::impl::ParsedPatternInfo const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ScientificHandler const>::LocalPointer(icu_70::number::impl::ScientificHandler const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::MutablePatternModifier>::LocalPointer(icu_70::number::impl::MutablePatternModifier*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ImmutablePatternModifier>::LocalPointer(icu_70::number::impl::ImmutablePatternModifier*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameHandler>::LocalPointer(icu_70::number::impl::LongNameHandler*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::MixedUnitLongNameHandler>::LocalPointer(icu_70::number::impl::MixedUnitLongNameHandler*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameMultiplexer const>::LocalPointer(icu_70::number::impl::LongNameMultiplexer const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::CompactHandler const>::LocalPointer(icu_70::number::impl::CompactHandler const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem const>::LocalPointer(icu_70::NumberingSystem const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::AdoptingModifierStore>::LocalPointer(icu_70::number::impl::AdoptingModifierStore*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::units::ComplexUnitsConverter>::LocalPointer(icu_70::units::ComplexUnitsConverter*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet const>::LocalPointer(icu_70::UnicodeSet const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::numparse::impl::NumberParserImpl>::LocalPointer(icu_70::numparse::impl::NumberParserImpl*)
Unexecuted instantiation: listformatter.cpp:icu_70::LocalPointer<icu_70::(anonymous namespace)::PatternHandler>::LocalPointer(icu_70::(anonymous namespace)::PatternHandler*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CollationElementIterator>::LocalPointer(icu_70::CollationElementIterator*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UCharsTrie>::LocalPointer(icu_70::UCharsTrie*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::BreakIterator>::LocalPointer(icu_70::BreakIterator*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UObject>::LocalPointer(icu_70::UObject*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector32>::LocalPointer(icu_70::UVector32*)
201
    /**
202
     * Constructor takes ownership and reports an error if NULL.
203
     *
204
     * This constructor is intended to be used with other-class constructors
205
     * that may report a failure UErrorCode,
206
     * so that callers need to check only for U_FAILURE(errorCode)
207
     * and not also separately for isNull().
208
     *
209
     * @param p simple pointer to an object that is adopted
210
     * @param errorCode in/out UErrorCode, set to U_MEMORY_ALLOCATION_ERROR
211
     *     if p==NULL and no other failure code had been set
212
     * @stable ICU 55
213
     */
214
0
    LocalPointer(T *p, UErrorCode &errorCode) : LocalPointerBase<T>(p) {
215
0
        if(p==NULL && U_SUCCESS(errorCode)) {
216
0
            errorCode=U_MEMORY_ALLOCATION_ERROR;
217
0
        }
218
0
    }
Unexecuted instantiation: umutablecptrie.cpp:icu_70::LocalPointer<icu_70::(anonymous namespace)::MutableCodePointTrie>::LocalPointer(icu_70::(anonymous namespace)::MutableCodePointTrie*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateFmtBestPattern>::LocalPointer(icu_70::DateFmtBestPattern*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateFormat>::LocalPointer(icu_70::DateFormat*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeString>::LocalPointer(icu_70::UnicodeString*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem>::LocalPointer(icu_70::NumberingSystem*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateTimePatternGenerator>::LocalPointer(icu_70::DateTimePatternGenerator*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Hashtable>::LocalPointer(icu_70::Hashtable*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Calendar>::LocalPointer(icu_70::Calendar*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::StringEnumeration>::LocalPointer(icu_70::StringEnumeration*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnElem>::LocalPointer(icu_70::PtnElem*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::DecimalQuantity>::LocalPointer(icu_70::number::impl::DecimalQuantity*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector>::LocalPointer(icu_70::UVector*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Region>::LocalPointer(icu_70::Region*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CurrencyPluralInfo>::LocalPointer(icu_70::CurrencyPluralInfo*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols>::LocalPointer(icu_70::DecimalFormatSymbols*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CurrencyAmount>::LocalPointer(icu_70::CurrencyAmount*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LocalizedNumberFormatterAsFormat>::LocalPointer(icu_70::number::impl::LocalizedNumberFormatterAsFormat*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::DecimalFormatWarehouse>::LocalPointer(icu_70::number::impl::DecimalFormatWarehouse*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameMultiplexer>::LocalPointer(icu_70::number::impl::LongNameMultiplexer*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::DecNum>::LocalPointer(icu_70::number::impl::DecNum*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules>::LocalPointer(icu_70::PluralRules*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::SharedPluralRules>::LocalPointer(icu_70::SharedPluralRules*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector32>::LocalPointer(icu_70::UVector32*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberFormat>::LocalPointer(icu_70::NumberFormat*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NFRule>::LocalPointer(icu_70::NFRule*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZone>::LocalPointer(icu_70::TimeZone*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CollationDataBuilder>::LocalPointer(icu_70::CollationDataBuilder*, UErrorCode&)
Unexecuted instantiation: listformatter.cpp:icu_70::LocalPointer<icu_70::(anonymous namespace)::PatternHandler>::LocalPointer(icu_70::(anonymous namespace)::PatternHandler*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::FormattedListData>::LocalPointer(icu_70::FormattedListData*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::StandardPluralRanges>::LocalPointer(icu_70::StandardPluralRanges*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UCharsTrieBuilder>::LocalPointer(icu_70::UCharsTrieBuilder*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::FilteredBreakIteratorBuilder>::LocalPointer(icu_70::FilteredBreakIteratorBuilder*, UErrorCode&)
Unexecuted instantiation: locavailable.cpp:icu_70::LocalPointer<(anonymous namespace)::AvailableLocalesStringEnumeration>::LocalPointer((anonymous namespace)::AvailableLocalesStringEnumeration*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet>::LocalPointer(icu_70::UnicodeSet*, UErrorCode&)
219
    /**
220
     * Move constructor, leaves src with isNull().
221
     * @param src source smart pointer
222
     * @stable ICU 56
223
     */
224
    LocalPointer(LocalPointer<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
225
        src.ptr=NULL;
226
    }
227
228
    /**
229
     * Constructs a LocalPointer from a C++11 std::unique_ptr.
230
     * The LocalPointer steals the object owned by the std::unique_ptr.
231
     *
232
     * This constructor works via move semantics. If your std::unique_ptr is
233
     * in a local variable, you must use std::move.
234
     *
235
     * @param p The std::unique_ptr from which the pointer will be stolen.
236
     * @stable ICU 64
237
     */
238
    explicit LocalPointer(std::unique_ptr<T> &&p)
239
        : LocalPointerBase<T>(p.release()) {}
240
241
    /**
242
     * Destructor deletes the object it owns.
243
     * @stable ICU 4.4
244
     */
245
0
    ~LocalPointer() {
246
0
        delete LocalPointerBase<T>::ptr;
247
0
    }
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Norm2AllModes>::~LocalPointer()
Unexecuted instantiation: umutablecptrie.cpp:icu_70::LocalPointer<icu_70::(anonymous namespace)::MutableCodePointTrie>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CharString>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::StringEnumeration>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CollationTailoring>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateFmtBestPattern>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateTimePatternGenerator>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Calendar>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateFormat>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeString>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Hashtable>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnElem>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateTimeMatcher>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnSkeleton>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::DecimalQuantity>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Region>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::LocalizedNumberFormatter>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::SimpleDateFormat::NSOverride>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberFormat>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormat>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZoneFormat>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZoneNames>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZoneNames::MatchInfoCollection>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::ZoneIdMatchHandler>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::TimeZone>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CurrencyPluralInfo>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CurrencyAmount>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Format>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LocalizedNumberFormatterAsFormat>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::CompactHandler const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameMultiplexer const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::MixedUnitLongNameHandler>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameHandler>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ImmutablePatternModifier>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::MutablePatternModifier>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ScientificHandler const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ParsedPatternInfo const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::UnitConversionHandler const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::UsagePrefsHandler const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::DecimalFormatWarehouse>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::ListFormatter>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameMultiplexer>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::DecNum>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::AdoptingModifierStore>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::units::ComplexUnitsConverter>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet const>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::numparse::impl::NumberParserImpl>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::StandardPluralRanges>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::SharedPluralRules>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector32>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NFRule>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CollationDataBuilder>::~LocalPointer()
Unexecuted instantiation: listformatter.cpp:icu_70::LocalPointer<icu_70::(anonymous namespace)::PatternHandler>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::FormattedListData>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CollationElementIterator>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UCharsTrie>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::BreakIterator>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UCharsTrieBuilder>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::FilteredBreakIteratorBuilder>::~LocalPointer()
Unexecuted instantiation: locavailable.cpp:icu_70::LocalPointer<(anonymous namespace)::AvailableLocalesStringEnumeration>::~LocalPointer()
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UObject>::~LocalPointer()
248
    /**
249
     * Move assignment operator, leaves src with isNull().
250
     * The behavior is undefined if *this and src are the same object.
251
     * @param src source smart pointer
252
     * @return *this
253
     * @stable ICU 56
254
     */
255
0
    LocalPointer<T> &operator=(LocalPointer<T> &&src) U_NOEXCEPT {
256
0
        delete LocalPointerBase<T>::ptr;
257
0
        LocalPointerBase<T>::ptr=src.ptr;
258
0
        src.ptr=NULL;
259
0
        return *this;
260
0
    }
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector>::operator=(icu_70::LocalPointer<icu_70::UVector>&&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet const>::operator=(icu_70::LocalPointer<icu_70::UnicodeSet const>&&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector32>::operator=(icu_70::LocalPointer<icu_70::UVector32>&&)
261
262
    /**
263
     * Move-assign from an std::unique_ptr to this LocalPointer.
264
     * Steals the pointer from the std::unique_ptr.
265
     *
266
     * @param p The std::unique_ptr from which the pointer will be stolen.
267
     * @return *this
268
     * @stable ICU 64
269
     */
270
    LocalPointer<T> &operator=(std::unique_ptr<T> &&p) U_NOEXCEPT {
271
        adoptInstead(p.release());
272
        return *this;
273
    }
274
275
    /**
276
     * Swap pointers.
277
     * @param other other smart pointer
278
     * @stable ICU 56
279
     */
280
    void swap(LocalPointer<T> &other) U_NOEXCEPT {
281
        T *temp=LocalPointerBase<T>::ptr;
282
        LocalPointerBase<T>::ptr=other.ptr;
283
        other.ptr=temp;
284
    }
285
    /**
286
     * Non-member LocalPointer swap function.
287
     * @param p1 will get p2's pointer
288
     * @param p2 will get p1's pointer
289
     * @stable ICU 56
290
     */
291
    friend inline void swap(LocalPointer<T> &p1, LocalPointer<T> &p2) U_NOEXCEPT {
292
        p1.swap(p2);
293
    }
294
    /**
295
     * Deletes the object it owns,
296
     * and adopts (takes ownership of) the one passed in.
297
     * @param p simple pointer to an object that is adopted
298
     * @stable ICU 4.4
299
     */
300
0
    void adoptInstead(T *p) {
301
0
        delete LocalPointerBase<T>::ptr;
302
0
        LocalPointerBase<T>::ptr=p;
303
0
    }
Unexecuted instantiation: icu_70::LocalPointer<icu_70::StringEnumeration>::adoptInstead(icu_70::StringEnumeration*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector>::adoptInstead(icu_70::UVector*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnElem>::adoptInstead(icu_70::PtnElem*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CurrencyPluralInfo>::adoptInstead(icu_70::CurrencyPluralInfo*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormat>::adoptInstead(icu_70::DecimalFormat*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem>::adoptInstead(icu_70::NumberingSystem*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols const>::adoptInstead(icu_70::DecimalFormatSymbols const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberingSystem const>::adoptInstead(icu_70::NumberingSystem const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ParsedPatternInfo const>::adoptInstead(icu_70::number::impl::ParsedPatternInfo const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ScientificHandler const>::adoptInstead(icu_70::number::impl::ScientificHandler const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::MutablePatternModifier>::adoptInstead(icu_70::number::impl::MutablePatternModifier*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::CompactHandler const>::adoptInstead(icu_70::number::impl::CompactHandler const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules const>::adoptInstead(icu_70::PluralRules const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::NumberFormat>::adoptInstead(icu_70::NumberFormat*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules>::adoptInstead(icu_70::PluralRules*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UnicodeSet const>::adoptInstead(icu_70::UnicodeSet const*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UCharsTrie>::adoptInstead(icu_70::UCharsTrie*)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::BreakIterator>::adoptInstead(icu_70::BreakIterator*)
304
    /**
305
     * Deletes the object it owns,
306
     * and adopts (takes ownership of) the one passed in.
307
     *
308
     * If U_FAILURE(errorCode), then the current object is retained and the new one deleted.
309
     *
310
     * If U_SUCCESS(errorCode) but the input pointer is NULL,
311
     * then U_MEMORY_ALLOCATION_ERROR is set,
312
     * the current object is deleted, and NULL is set.
313
     *
314
     * @param p simple pointer to an object that is adopted
315
     * @param errorCode in/out UErrorCode, set to U_MEMORY_ALLOCATION_ERROR
316
     *     if p==NULL and no other failure code had been set
317
     * @stable ICU 55
318
     */
319
0
    void adoptInsteadAndCheckErrorCode(T *p, UErrorCode &errorCode) {
320
0
        if(U_SUCCESS(errorCode)) {
321
0
            delete LocalPointerBase<T>::ptr;
322
0
            LocalPointerBase<T>::ptr=p;
323
0
            if(p==NULL) {
324
0
                errorCode=U_MEMORY_ALLOCATION_ERROR;
325
0
            }
326
0
        } else {
327
0
            delete p;
328
0
        }
329
0
    }
Unexecuted instantiation: icu_70::LocalPointer<icu_70::CharString>::adoptInsteadAndCheckErrorCode(icu_70::CharString*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector>::adoptInsteadAndCheckErrorCode(icu_70::UVector*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PtnSkeleton>::adoptInsteadAndCheckErrorCode(icu_70::PtnSkeleton*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DateTimeMatcher>::adoptInsteadAndCheckErrorCode(icu_70::DateTimeMatcher*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::Calendar>::adoptInsteadAndCheckErrorCode(icu_70::Calendar*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols const>::adoptInsteadAndCheckErrorCode(icu_70::DecimalFormatSymbols const*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::PluralRules>::adoptInsteadAndCheckErrorCode(icu_70::PluralRules*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::UsagePrefsHandler const>::adoptInsteadAndCheckErrorCode(icu_70::number::impl::UsagePrefsHandler const*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::UnitConversionHandler const>::adoptInsteadAndCheckErrorCode(icu_70::number::impl::UnitConversionHandler const*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::ImmutablePatternModifier>::adoptInsteadAndCheckErrorCode(icu_70::number::impl::ImmutablePatternModifier*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameMultiplexer const>::adoptInsteadAndCheckErrorCode(icu_70::number::impl::LongNameMultiplexer const*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::MixedUnitLongNameHandler>::adoptInsteadAndCheckErrorCode(icu_70::number::impl::MixedUnitLongNameHandler*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::number::impl::LongNameHandler>::adoptInsteadAndCheckErrorCode(icu_70::number::impl::LongNameHandler*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::ListFormatter>::adoptInsteadAndCheckErrorCode(icu_70::ListFormatter*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::units::ComplexUnitsConverter>::adoptInsteadAndCheckErrorCode(icu_70::units::ComplexUnitsConverter*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::DecimalFormatSymbols>::adoptInsteadAndCheckErrorCode(icu_70::DecimalFormatSymbols*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalPointer<icu_70::UVector32>::adoptInsteadAndCheckErrorCode(icu_70::UVector32*, UErrorCode&)
330
331
    /**
332
     * Conversion operator to a C++11 std::unique_ptr.
333
     * Disowns the object and gives it to the returned std::unique_ptr.
334
     *
335
     * This operator works via move semantics. If your LocalPointer is
336
     * in a local variable, you must use std::move.
337
     *
338
     * @return An std::unique_ptr owning the pointer previously owned by this
339
     *         icu::LocalPointer.
340
     * @stable ICU 64
341
     */
342
    operator std::unique_ptr<T> () && {
343
        return std::unique_ptr<T>(LocalPointerBase<T>::orphan());
344
    }
345
};
346
347
/**
348
 * "Smart pointer" class, deletes objects via the C++ array delete[] operator.
349
 * For most methods see the LocalPointerBase base class.
350
 * Adds operator[] for array item access.
351
 *
352
 * Usage example:
353
 * \code
354
 * LocalArray<UnicodeString> a(new UnicodeString[2]);
355
 * a[0].append((char16_t)0x61);
356
 * if(some condition) { return; }  // no need to explicitly delete the array
357
 * a.adoptInstead(new UnicodeString[4]);
358
 * a[3].append((char16_t)0x62).append((char16_t)0x63).reverse();
359
 * // no need to explicitly delete the array
360
 * \endcode
361
 *
362
 * @see LocalPointerBase
363
 * @stable ICU 4.4
364
 */
365
template<typename T>
366
class LocalArray : public LocalPointerBase<T> {
367
public:
368
    using LocalPointerBase<T>::operator*;
369
    using LocalPointerBase<T>::operator->;
370
    /**
371
     * Constructor takes ownership.
372
     * @param p simple pointer to an array of T objects that is adopted
373
     * @stable ICU 4.4
374
     */
375
0
    explicit LocalArray(T *p=NULL) : LocalPointerBase<T>(p) {}
Unexecuted instantiation: icu_70::LocalArray<icu_70::Formattable>::LocalArray(icu_70::Formattable*)
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString>::LocalArray(icu_70::UnicodeString*)
Unexecuted instantiation: icu_70::LocalArray<icu_70::MeasureUnit>::LocalArray(icu_70::MeasureUnit*)
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString const>::LocalArray(icu_70::UnicodeString const*)
376
    /**
377
     * Constructor takes ownership and reports an error if NULL.
378
     *
379
     * This constructor is intended to be used with other-class constructors
380
     * that may report a failure UErrorCode,
381
     * so that callers need to check only for U_FAILURE(errorCode)
382
     * and not also separately for isNull().
383
     *
384
     * @param p simple pointer to an array of T objects that is adopted
385
     * @param errorCode in/out UErrorCode, set to U_MEMORY_ALLOCATION_ERROR
386
     *     if p==NULL and no other failure code had been set
387
     * @stable ICU 56
388
     */
389
0
    LocalArray(T *p, UErrorCode &errorCode) : LocalPointerBase<T>(p) {
390
0
        if(p==NULL && U_SUCCESS(errorCode)) {
391
0
            errorCode=U_MEMORY_ALLOCATION_ERROR;
392
0
        }
393
0
    }
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString>::LocalArray(icu_70::UnicodeString*, UErrorCode&)
Unexecuted instantiation: icu_70::LocalArray<icu_70::MeasureUnit>::LocalArray(icu_70::MeasureUnit*, UErrorCode&)
394
    /**
395
     * Move constructor, leaves src with isNull().
396
     * @param src source smart pointer
397
     * @stable ICU 56
398
     */
399
    LocalArray(LocalArray<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
400
        src.ptr=NULL;
401
    }
402
403
    /**
404
     * Constructs a LocalArray from a C++11 std::unique_ptr of an array type.
405
     * The LocalPointer steals the array owned by the std::unique_ptr.
406
     *
407
     * This constructor works via move semantics. If your std::unique_ptr is
408
     * in a local variable, you must use std::move.
409
     *
410
     * @param p The std::unique_ptr from which the array will be stolen.
411
     * @stable ICU 64
412
     */
413
    explicit LocalArray(std::unique_ptr<T[]> &&p)
414
        : LocalPointerBase<T>(p.release()) {}
415
416
    /**
417
     * Destructor deletes the array it owns.
418
     * @stable ICU 4.4
419
     */
420
0
    ~LocalArray() {
421
0
        delete[] LocalPointerBase<T>::ptr;
422
0
    }
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString>::~LocalArray()
Unexecuted instantiation: icu_70::LocalArray<icu_70::Formattable>::~LocalArray()
Unexecuted instantiation: icu_70::LocalArray<icu_70::MeasureUnit>::~LocalArray()
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString const>::~LocalArray()
423
    /**
424
     * Move assignment operator, leaves src with isNull().
425
     * The behavior is undefined if *this and src are the same object.
426
     * @param src source smart pointer
427
     * @return *this
428
     * @stable ICU 56
429
     */
430
0
    LocalArray<T> &operator=(LocalArray<T> &&src) U_NOEXCEPT {
431
0
        delete[] LocalPointerBase<T>::ptr;
432
0
        LocalPointerBase<T>::ptr=src.ptr;
433
0
        src.ptr=NULL;
434
0
        return *this;
435
0
    }
436
437
    /**
438
     * Move-assign from an std::unique_ptr to this LocalPointer.
439
     * Steals the array from the std::unique_ptr.
440
     *
441
     * @param p The std::unique_ptr from which the array will be stolen.
442
     * @return *this
443
     * @stable ICU 64
444
     */
445
    LocalArray<T> &operator=(std::unique_ptr<T[]> &&p) U_NOEXCEPT {
446
        adoptInstead(p.release());
447
        return *this;
448
    }
449
450
    /**
451
     * Swap pointers.
452
     * @param other other smart pointer
453
     * @stable ICU 56
454
     */
455
    void swap(LocalArray<T> &other) U_NOEXCEPT {
456
        T *temp=LocalPointerBase<T>::ptr;
457
        LocalPointerBase<T>::ptr=other.ptr;
458
        other.ptr=temp;
459
    }
460
    /**
461
     * Non-member LocalArray swap function.
462
     * @param p1 will get p2's pointer
463
     * @param p2 will get p1's pointer
464
     * @stable ICU 56
465
     */
466
    friend inline void swap(LocalArray<T> &p1, LocalArray<T> &p2) U_NOEXCEPT {
467
        p1.swap(p2);
468
    }
469
    /**
470
     * Deletes the array it owns,
471
     * and adopts (takes ownership of) the one passed in.
472
     * @param p simple pointer to an array of T objects that is adopted
473
     * @stable ICU 4.4
474
     */
475
0
    void adoptInstead(T *p) {
476
0
        delete[] LocalPointerBase<T>::ptr;
477
0
        LocalPointerBase<T>::ptr=p;
478
0
    }
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString>::adoptInstead(icu_70::UnicodeString*)
Unexecuted instantiation: icu_70::LocalArray<icu_70::MeasureUnit>::adoptInstead(icu_70::MeasureUnit*)
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString const>::adoptInstead(icu_70::UnicodeString const*)
479
    /**
480
     * Deletes the array it owns,
481
     * and adopts (takes ownership of) the one passed in.
482
     *
483
     * If U_FAILURE(errorCode), then the current array is retained and the new one deleted.
484
     *
485
     * If U_SUCCESS(errorCode) but the input pointer is NULL,
486
     * then U_MEMORY_ALLOCATION_ERROR is set,
487
     * the current array is deleted, and NULL is set.
488
     *
489
     * @param p simple pointer to an array of T objects that is adopted
490
     * @param errorCode in/out UErrorCode, set to U_MEMORY_ALLOCATION_ERROR
491
     *     if p==NULL and no other failure code had been set
492
     * @stable ICU 56
493
     */
494
    void adoptInsteadAndCheckErrorCode(T *p, UErrorCode &errorCode) {
495
        if(U_SUCCESS(errorCode)) {
496
            delete[] LocalPointerBase<T>::ptr;
497
            LocalPointerBase<T>::ptr=p;
498
            if(p==NULL) {
499
                errorCode=U_MEMORY_ALLOCATION_ERROR;
500
            }
501
        } else {
502
            delete[] p;
503
        }
504
    }
505
    /**
506
     * Array item access (writable).
507
     * No index bounds check.
508
     * @param i array index
509
     * @return reference to the array item
510
     * @stable ICU 4.4
511
     */
512
0
    T &operator[](ptrdiff_t i) const { return LocalPointerBase<T>::ptr[i]; }
Unexecuted instantiation: icu_70::LocalArray<icu_70::Formattable>::operator[](long) const
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString>::operator[](long) const
Unexecuted instantiation: icu_70::LocalArray<icu_70::MeasureUnit>::operator[](long) const
Unexecuted instantiation: icu_70::LocalArray<icu_70::UnicodeString const>::operator[](long) const
513
514
    /**
515
     * Conversion operator to a C++11 std::unique_ptr.
516
     * Disowns the object and gives it to the returned std::unique_ptr.
517
     *
518
     * This operator works via move semantics. If your LocalPointer is
519
     * in a local variable, you must use std::move.
520
     *
521
     * @return An std::unique_ptr owning the pointer previously owned by this
522
     *         icu::LocalPointer.
523
     * @stable ICU 64
524
     */
525
    operator std::unique_ptr<T[]> () && {
526
        return std::unique_ptr<T[]>(LocalPointerBase<T>::orphan());
527
    }
528
};
529
530
/**
531
 * \def U_DEFINE_LOCAL_OPEN_POINTER
532
 * "Smart pointer" definition macro, deletes objects via the closeFunction.
533
 * Defines a subclass of LocalPointerBase which works just
534
 * like LocalPointer<Type> except that this subclass will use the closeFunction
535
 * rather than the C++ delete operator.
536
 *
537
 * Usage example:
538
 * \code
539
 * LocalUCaseMapPointer csm(ucasemap_open(localeID, options, &errorCode));
540
 * utf8OutLength=ucasemap_utf8ToLower(csm.getAlias(),
541
 *     utf8Out, (int32_t)sizeof(utf8Out),
542
 *     utf8In, utf8InLength, &errorCode);
543
 * if(U_FAILURE(errorCode)) { return; }  // no need to explicitly delete the UCaseMap
544
 * \endcode
545
 *
546
 * @see LocalPointerBase
547
 * @see LocalPointer
548
 * @stable ICU 4.4
549
 */
550
#define U_DEFINE_LOCAL_OPEN_POINTER(LocalPointerClassName, Type, closeFunction) \
551
    class LocalPointerClassName : public LocalPointerBase<Type> { \
552
    public: \
553
        using LocalPointerBase<Type>::operator*; \
554
        using LocalPointerBase<Type>::operator->; \
555
0
        explicit LocalPointerClassName(Type *p=NULL) : LocalPointerBase<Type>(p) {} \
Unexecuted instantiation: icu_70::LocalUHashtablePointer::LocalUHashtablePointer(UHashtable*)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::LocalUMutableCPTriePointer(UMutableCPTrie*)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::LocalUEnumerationPointer(UEnumeration*)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::LocalUResourceBundlePointer(UResourceBundle*)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::LocalULanguageTagPointer(ULanguageTag*)
Unexecuted instantiation: icu_70::LocalUTextPointer::LocalUTextPointer(UText*)
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::LocalUDataMemoryPointer(UDataMemory*)
Unexecuted instantiation: icu_70::LocalUSetPointer::LocalUSetPointer(USet*)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::LocalUNormalizer2Pointer(UNormalizer2*)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::LocalUCPTriePointer(UCPTrie*)
Unexecuted instantiation: icu_70::LocalUConverterPointer::LocalUConverterPointer(UConverter*)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::LocalUBreakIteratorPointer(UBreakIterator*)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::LocalUCaseMapPointer(UCaseMap*)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::LocalUCollatorPointer(UCollator*)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::LocalUCalendarPointer(void**)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::LocalUFormattablePointer(void**)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::LocalUFieldPositionIteratorPointer(UFieldPositionIterator*)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::LocalUNumberFormatPointer(void**)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::LocalUDateFormatPointer(void**)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::LocalUDateTimePatternGeneratorPointer(void**)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::LocalUPluralRulesPointer(UPluralRules*)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::LocalUConstrainedFieldPositionPointer(UConstrainedFieldPosition*)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::LocalUNumberFormatterPointer(UNumberFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::LocalUFormattedNumberPointer(UFormattedNumber*)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::LocalURelativeDateTimeFormatterPointer(URelativeDateTimeFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::LocalUFormattedRelativeDateTimePointer(UFormattedRelativeDateTime*)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::LocalULocaleDisplayNamesPointer(ULocaleDisplayNames*)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::LocalUListFormatterPointer(UListFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::LocalUFormattedListPointer(UFormattedList*)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::LocalUMessageFormatPointer(void**)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::LocalUNumberRangeFormatterPointer(UNumberRangeFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::LocalUFormattedNumberRangePointer(UFormattedNumberRange*)
556
        LocalPointerClassName(LocalPointerClassName &&src) U_NOEXCEPT \
557
0
                : LocalPointerBase<Type>(src.ptr) { \
558
0
            src.ptr=NULL; \
559
0
        } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::LocalUDataMemoryPointer(icu_70::LocalUDataMemoryPointer&&)
Unexecuted instantiation: icu_70::LocalUSetPointer::LocalUSetPointer(icu_70::LocalUSetPointer&&)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::LocalUNormalizer2Pointer(icu_70::LocalUNormalizer2Pointer&&)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::LocalUCPTriePointer(icu_70::LocalUCPTriePointer&&)
Unexecuted instantiation: icu_70::LocalUHashtablePointer::LocalUHashtablePointer(icu_70::LocalUHashtablePointer&&)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::LocalUMutableCPTriePointer(icu_70::LocalUMutableCPTriePointer&&)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::LocalUEnumerationPointer(icu_70::LocalUEnumerationPointer&&)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::LocalUResourceBundlePointer(icu_70::LocalUResourceBundlePointer&&)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::LocalULanguageTagPointer(icu_70::LocalULanguageTagPointer&&)
Unexecuted instantiation: icu_70::LocalUConverterPointer::LocalUConverterPointer(icu_70::LocalUConverterPointer&&)
Unexecuted instantiation: icu_70::LocalUTextPointer::LocalUTextPointer(icu_70::LocalUTextPointer&&)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::LocalUBreakIteratorPointer(icu_70::LocalUBreakIteratorPointer&&)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::LocalUCaseMapPointer(icu_70::LocalUCaseMapPointer&&)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::LocalUCollatorPointer(icu_70::LocalUCollatorPointer&&)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::LocalUCalendarPointer(icu_70::LocalUCalendarPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::LocalUFormattablePointer(icu_70::LocalUFormattablePointer&&)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::LocalUFieldPositionIteratorPointer(icu_70::LocalUFieldPositionIteratorPointer&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::LocalUNumberFormatPointer(icu_70::LocalUNumberFormatPointer&&)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::LocalUDateFormatPointer(icu_70::LocalUDateFormatPointer&&)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::LocalUDateTimePatternGeneratorPointer(icu_70::LocalUDateTimePatternGeneratorPointer&&)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::LocalUPluralRulesPointer(icu_70::LocalUPluralRulesPointer&&)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::LocalUConstrainedFieldPositionPointer(icu_70::LocalUConstrainedFieldPositionPointer&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::LocalUNumberFormatterPointer(icu_70::LocalUNumberFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::LocalUFormattedNumberPointer(icu_70::LocalUFormattedNumberPointer&&)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::LocalURelativeDateTimeFormatterPointer(icu_70::LocalURelativeDateTimeFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::LocalUFormattedRelativeDateTimePointer(icu_70::LocalUFormattedRelativeDateTimePointer&&)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::LocalULocaleDisplayNamesPointer(icu_70::LocalULocaleDisplayNamesPointer&&)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::LocalUListFormatterPointer(icu_70::LocalUListFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::LocalUFormattedListPointer(icu_70::LocalUFormattedListPointer&&)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::LocalUMessageFormatPointer(icu_70::LocalUMessageFormatPointer&&)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::LocalUNumberRangeFormatterPointer(icu_70::LocalUNumberRangeFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::LocalUFormattedNumberRangePointer(icu_70::LocalUFormattedNumberRangePointer&&)
560
        /* TODO: Be agnostic of the deleter function signature from the user-provided std::unique_ptr? */ \
561
        explicit LocalPointerClassName(std::unique_ptr<Type, decltype(&closeFunction)> &&p) \
562
0
                : LocalPointerBase<Type>(p.release()) {} \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::LocalUDataMemoryPointer(std::__1::unique_ptr<UDataMemory, void (*)(UDataMemory*)>&&)
Unexecuted instantiation: icu_70::LocalUSetPointer::LocalUSetPointer(std::__1::unique_ptr<USet, void (*)(USet*)>&&)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::LocalUNormalizer2Pointer(std::__1::unique_ptr<UNormalizer2, void (*)(UNormalizer2*)>&&)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::LocalUCPTriePointer(std::__1::unique_ptr<UCPTrie, void (*)(UCPTrie*)>&&)
Unexecuted instantiation: icu_70::LocalUHashtablePointer::LocalUHashtablePointer(std::__1::unique_ptr<UHashtable, void (*)(UHashtable*)>&&)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::LocalUMutableCPTriePointer(std::__1::unique_ptr<UMutableCPTrie, void (*)(UMutableCPTrie*)>&&)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::LocalUEnumerationPointer(std::__1::unique_ptr<UEnumeration, void (*)(UEnumeration*)>&&)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::LocalUResourceBundlePointer(std::__1::unique_ptr<UResourceBundle, void (*)(UResourceBundle*)>&&)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::LocalULanguageTagPointer(std::__1::unique_ptr<ULanguageTag, void (*)(ULanguageTag*)>&&)
Unexecuted instantiation: icu_70::LocalUConverterPointer::LocalUConverterPointer(std::__1::unique_ptr<UConverter, void (*)(UConverter*)>&&)
Unexecuted instantiation: icu_70::LocalUTextPointer::LocalUTextPointer(std::__1::unique_ptr<UText, UText* (*)(UText*)>&&)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::LocalUBreakIteratorPointer(std::__1::unique_ptr<UBreakIterator, void (*)(UBreakIterator*)>&&)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::LocalUCaseMapPointer(std::__1::unique_ptr<UCaseMap, void (*)(UCaseMap*)>&&)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::LocalUCollatorPointer(std::__1::unique_ptr<UCollator, void (*)(UCollator*)>&&)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::LocalUCalendarPointer(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::LocalUFormattablePointer(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::LocalUFieldPositionIteratorPointer(std::__1::unique_ptr<UFieldPositionIterator, void (*)(UFieldPositionIterator*)>&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::LocalUNumberFormatPointer(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::LocalUDateFormatPointer(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::LocalUDateTimePatternGeneratorPointer(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::LocalUPluralRulesPointer(std::__1::unique_ptr<UPluralRules, void (*)(UPluralRules*)>&&)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::LocalUConstrainedFieldPositionPointer(std::__1::unique_ptr<UConstrainedFieldPosition, void (*)(UConstrainedFieldPosition*)>&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::LocalUNumberFormatterPointer(std::__1::unique_ptr<UNumberFormatter, void (*)(UNumberFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::LocalUFormattedNumberPointer(std::__1::unique_ptr<UFormattedNumber, void (*)(UFormattedNumber*)>&&)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::LocalURelativeDateTimeFormatterPointer(std::__1::unique_ptr<URelativeDateTimeFormatter, void (*)(URelativeDateTimeFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::LocalUFormattedRelativeDateTimePointer(std::__1::unique_ptr<UFormattedRelativeDateTime, void (*)(UFormattedRelativeDateTime*)>&&)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::LocalULocaleDisplayNamesPointer(std::__1::unique_ptr<ULocaleDisplayNames, void (*)(ULocaleDisplayNames*)>&&)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::LocalUListFormatterPointer(std::__1::unique_ptr<UListFormatter, void (*)(UListFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::LocalUFormattedListPointer(std::__1::unique_ptr<UFormattedList, void (*)(UFormattedList*)>&&)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::LocalUMessageFormatPointer(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::LocalUNumberRangeFormatterPointer(std::__1::unique_ptr<UNumberRangeFormatter, void (*)(UNumberRangeFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::LocalUFormattedNumberRangePointer(std::__1::unique_ptr<UFormattedNumberRange, void (*)(UFormattedNumberRange*)>&&)
563
0
        ~LocalPointerClassName() { if (ptr != NULL) { closeFunction(ptr); } } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::~LocalUDataMemoryPointer()
Unexecuted instantiation: icu_70::LocalUSetPointer::~LocalUSetPointer()
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::~LocalUNormalizer2Pointer()
Unexecuted instantiation: icu_70::LocalUCPTriePointer::~LocalUCPTriePointer()
Unexecuted instantiation: icu_70::LocalUHashtablePointer::~LocalUHashtablePointer()
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::~LocalUMutableCPTriePointer()
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::~LocalUEnumerationPointer()
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::~LocalUResourceBundlePointer()
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::~LocalULanguageTagPointer()
Unexecuted instantiation: icu_70::LocalUConverterPointer::~LocalUConverterPointer()
Unexecuted instantiation: icu_70::LocalUTextPointer::~LocalUTextPointer()
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::~LocalUBreakIteratorPointer()
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::~LocalUCaseMapPointer()
Unexecuted instantiation: icu_70::LocalUCollatorPointer::~LocalUCollatorPointer()
Unexecuted instantiation: icu_70::LocalUCalendarPointer::~LocalUCalendarPointer()
Unexecuted instantiation: icu_70::LocalUFormattablePointer::~LocalUFormattablePointer()
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::~LocalUFieldPositionIteratorPointer()
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::~LocalUNumberFormatPointer()
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::~LocalUDateFormatPointer()
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::~LocalUDateTimePatternGeneratorPointer()
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::~LocalUPluralRulesPointer()
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::~LocalUConstrainedFieldPositionPointer()
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::~LocalUNumberFormatterPointer()
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::~LocalUFormattedNumberPointer()
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::~LocalURelativeDateTimeFormatterPointer()
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::~LocalUFormattedRelativeDateTimePointer()
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::~LocalULocaleDisplayNamesPointer()
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::~LocalUListFormatterPointer()
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::~LocalUFormattedListPointer()
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::~LocalUMessageFormatPointer()
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::~LocalUNumberRangeFormatterPointer()
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::~LocalUFormattedNumberRangePointer()
564
0
        LocalPointerClassName &operator=(LocalPointerClassName &&src) U_NOEXCEPT { \
565
0
            if (ptr != NULL) { closeFunction(ptr); } \
566
0
            LocalPointerBase<Type>::ptr=src.ptr; \
567
0
            src.ptr=NULL; \
568
0
            return *this; \
569
0
        } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::operator=(icu_70::LocalUDataMemoryPointer&&)
Unexecuted instantiation: icu_70::LocalUSetPointer::operator=(icu_70::LocalUSetPointer&&)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::operator=(icu_70::LocalUNormalizer2Pointer&&)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::operator=(icu_70::LocalUCPTriePointer&&)
Unexecuted instantiation: icu_70::LocalUHashtablePointer::operator=(icu_70::LocalUHashtablePointer&&)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::operator=(icu_70::LocalUMutableCPTriePointer&&)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::operator=(icu_70::LocalUEnumerationPointer&&)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::operator=(icu_70::LocalUResourceBundlePointer&&)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::operator=(icu_70::LocalULanguageTagPointer&&)
Unexecuted instantiation: icu_70::LocalUConverterPointer::operator=(icu_70::LocalUConverterPointer&&)
Unexecuted instantiation: icu_70::LocalUTextPointer::operator=(icu_70::LocalUTextPointer&&)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::operator=(icu_70::LocalUBreakIteratorPointer&&)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::operator=(icu_70::LocalUCaseMapPointer&&)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::operator=(icu_70::LocalUCollatorPointer&&)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::operator=(icu_70::LocalUCalendarPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::operator=(icu_70::LocalUFormattablePointer&&)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::operator=(icu_70::LocalUFieldPositionIteratorPointer&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::operator=(icu_70::LocalUNumberFormatPointer&&)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::operator=(icu_70::LocalUDateFormatPointer&&)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::operator=(icu_70::LocalUDateTimePatternGeneratorPointer&&)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::operator=(icu_70::LocalUPluralRulesPointer&&)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::operator=(icu_70::LocalUConstrainedFieldPositionPointer&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::operator=(icu_70::LocalUNumberFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::operator=(icu_70::LocalUFormattedNumberPointer&&)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::operator=(icu_70::LocalURelativeDateTimeFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::operator=(icu_70::LocalUFormattedRelativeDateTimePointer&&)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::operator=(icu_70::LocalULocaleDisplayNamesPointer&&)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::operator=(icu_70::LocalUListFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::operator=(icu_70::LocalUFormattedListPointer&&)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::operator=(icu_70::LocalUMessageFormatPointer&&)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::operator=(icu_70::LocalUNumberRangeFormatterPointer&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::operator=(icu_70::LocalUFormattedNumberRangePointer&&)
570
        /* TODO: Be agnostic of the deleter function signature from the user-provided std::unique_ptr? */ \
571
0
        LocalPointerClassName &operator=(std::unique_ptr<Type, decltype(&closeFunction)> &&p) { \
572
0
            adoptInstead(p.release()); \
573
0
            return *this; \
574
0
        } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::operator=(std::__1::unique_ptr<UDataMemory, void (*)(UDataMemory*)>&&)
Unexecuted instantiation: icu_70::LocalUSetPointer::operator=(std::__1::unique_ptr<USet, void (*)(USet*)>&&)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::operator=(std::__1::unique_ptr<UNormalizer2, void (*)(UNormalizer2*)>&&)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::operator=(std::__1::unique_ptr<UCPTrie, void (*)(UCPTrie*)>&&)
Unexecuted instantiation: icu_70::LocalUHashtablePointer::operator=(std::__1::unique_ptr<UHashtable, void (*)(UHashtable*)>&&)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::operator=(std::__1::unique_ptr<UMutableCPTrie, void (*)(UMutableCPTrie*)>&&)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::operator=(std::__1::unique_ptr<UEnumeration, void (*)(UEnumeration*)>&&)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::operator=(std::__1::unique_ptr<UResourceBundle, void (*)(UResourceBundle*)>&&)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::operator=(std::__1::unique_ptr<ULanguageTag, void (*)(ULanguageTag*)>&&)
Unexecuted instantiation: icu_70::LocalUConverterPointer::operator=(std::__1::unique_ptr<UConverter, void (*)(UConverter*)>&&)
Unexecuted instantiation: icu_70::LocalUTextPointer::operator=(std::__1::unique_ptr<UText, UText* (*)(UText*)>&&)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::operator=(std::__1::unique_ptr<UBreakIterator, void (*)(UBreakIterator*)>&&)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::operator=(std::__1::unique_ptr<UCaseMap, void (*)(UCaseMap*)>&&)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::operator=(std::__1::unique_ptr<UCollator, void (*)(UCollator*)>&&)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::operator=(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::operator=(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::operator=(std::__1::unique_ptr<UFieldPositionIterator, void (*)(UFieldPositionIterator*)>&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::operator=(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::operator=(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::operator=(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::operator=(std::__1::unique_ptr<UPluralRules, void (*)(UPluralRules*)>&&)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::operator=(std::__1::unique_ptr<UConstrainedFieldPosition, void (*)(UConstrainedFieldPosition*)>&&)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::operator=(std::__1::unique_ptr<UNumberFormatter, void (*)(UNumberFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::operator=(std::__1::unique_ptr<UFormattedNumber, void (*)(UFormattedNumber*)>&&)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::operator=(std::__1::unique_ptr<URelativeDateTimeFormatter, void (*)(URelativeDateTimeFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::operator=(std::__1::unique_ptr<UFormattedRelativeDateTime, void (*)(UFormattedRelativeDateTime*)>&&)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::operator=(std::__1::unique_ptr<ULocaleDisplayNames, void (*)(ULocaleDisplayNames*)>&&)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::operator=(std::__1::unique_ptr<UListFormatter, void (*)(UListFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::operator=(std::__1::unique_ptr<UFormattedList, void (*)(UFormattedList*)>&&)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::operator=(std::__1::unique_ptr<void*, void (*)(void**)>&&)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::operator=(std::__1::unique_ptr<UNumberRangeFormatter, void (*)(UNumberRangeFormatter*)>&&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::operator=(std::__1::unique_ptr<UFormattedNumberRange, void (*)(UFormattedNumberRange*)>&&)
575
0
        void swap(LocalPointerClassName &other) U_NOEXCEPT { \
576
0
            Type *temp=LocalPointerBase<Type>::ptr; \
577
0
            LocalPointerBase<Type>::ptr=other.ptr; \
578
0
            other.ptr=temp; \
579
0
        } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::swap(icu_70::LocalUDataMemoryPointer&)
Unexecuted instantiation: icu_70::LocalUSetPointer::swap(icu_70::LocalUSetPointer&)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::swap(icu_70::LocalUNormalizer2Pointer&)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::swap(icu_70::LocalUCPTriePointer&)
Unexecuted instantiation: icu_70::LocalUHashtablePointer::swap(icu_70::LocalUHashtablePointer&)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::swap(icu_70::LocalUMutableCPTriePointer&)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::swap(icu_70::LocalUEnumerationPointer&)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::swap(icu_70::LocalUResourceBundlePointer&)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::swap(icu_70::LocalULanguageTagPointer&)
Unexecuted instantiation: icu_70::LocalUConverterPointer::swap(icu_70::LocalUConverterPointer&)
Unexecuted instantiation: icu_70::LocalUTextPointer::swap(icu_70::LocalUTextPointer&)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::swap(icu_70::LocalUBreakIteratorPointer&)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::swap(icu_70::LocalUCaseMapPointer&)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::swap(icu_70::LocalUCollatorPointer&)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::swap(icu_70::LocalUCalendarPointer&)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::swap(icu_70::LocalUFormattablePointer&)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::swap(icu_70::LocalUFieldPositionIteratorPointer&)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::swap(icu_70::LocalUNumberFormatPointer&)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::swap(icu_70::LocalUDateFormatPointer&)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::swap(icu_70::LocalUDateTimePatternGeneratorPointer&)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::swap(icu_70::LocalUPluralRulesPointer&)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::swap(icu_70::LocalUConstrainedFieldPositionPointer&)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::swap(icu_70::LocalUNumberFormatterPointer&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::swap(icu_70::LocalUFormattedNumberPointer&)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::swap(icu_70::LocalURelativeDateTimeFormatterPointer&)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::swap(icu_70::LocalUFormattedRelativeDateTimePointer&)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::swap(icu_70::LocalULocaleDisplayNamesPointer&)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::swap(icu_70::LocalUListFormatterPointer&)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::swap(icu_70::LocalUFormattedListPointer&)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::swap(icu_70::LocalUMessageFormatPointer&)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::swap(icu_70::LocalUNumberRangeFormatterPointer&)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::swap(icu_70::LocalUFormattedNumberRangePointer&)
580
0
        friend inline void swap(LocalPointerClassName &p1, LocalPointerClassName &p2) U_NOEXCEPT { \
581
0
            p1.swap(p2); \
582
0
        } \
Unexecuted instantiation: icu_70::swap(icu_70::LocalUDataMemoryPointer&, icu_70::LocalUDataMemoryPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUSetPointer&, icu_70::LocalUSetPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUNormalizer2Pointer&, icu_70::LocalUNormalizer2Pointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUCPTriePointer&, icu_70::LocalUCPTriePointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUHashtablePointer&, icu_70::LocalUHashtablePointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUMutableCPTriePointer&, icu_70::LocalUMutableCPTriePointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUEnumerationPointer&, icu_70::LocalUEnumerationPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUResourceBundlePointer&, icu_70::LocalUResourceBundlePointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalULanguageTagPointer&, icu_70::LocalULanguageTagPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUConverterPointer&, icu_70::LocalUConverterPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUTextPointer&, icu_70::LocalUTextPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUBreakIteratorPointer&, icu_70::LocalUBreakIteratorPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUCaseMapPointer&, icu_70::LocalUCaseMapPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUCollatorPointer&, icu_70::LocalUCollatorPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUCalendarPointer&, icu_70::LocalUCalendarPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUFormattablePointer&, icu_70::LocalUFormattablePointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUFieldPositionIteratorPointer&, icu_70::LocalUFieldPositionIteratorPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUNumberFormatPointer&, icu_70::LocalUNumberFormatPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUDateFormatPointer&, icu_70::LocalUDateFormatPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUDateTimePatternGeneratorPointer&, icu_70::LocalUDateTimePatternGeneratorPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUPluralRulesPointer&, icu_70::LocalUPluralRulesPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUConstrainedFieldPositionPointer&, icu_70::LocalUConstrainedFieldPositionPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUNumberFormatterPointer&, icu_70::LocalUNumberFormatterPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUFormattedNumberPointer&, icu_70::LocalUFormattedNumberPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalURelativeDateTimeFormatterPointer&, icu_70::LocalURelativeDateTimeFormatterPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUFormattedRelativeDateTimePointer&, icu_70::LocalUFormattedRelativeDateTimePointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalULocaleDisplayNamesPointer&, icu_70::LocalULocaleDisplayNamesPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUListFormatterPointer&, icu_70::LocalUListFormatterPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUFormattedListPointer&, icu_70::LocalUFormattedListPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUMessageFormatPointer&, icu_70::LocalUMessageFormatPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUNumberRangeFormatterPointer&, icu_70::LocalUNumberRangeFormatterPointer&)
Unexecuted instantiation: icu_70::swap(icu_70::LocalUFormattedNumberRangePointer&, icu_70::LocalUFormattedNumberRangePointer&)
583
0
        void adoptInstead(Type *p) { \
584
0
            if (ptr != NULL) { closeFunction(ptr); } \
585
0
            ptr=p; \
586
0
        } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::adoptInstead(UDataMemory*)
Unexecuted instantiation: icu_70::LocalUSetPointer::adoptInstead(USet*)
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::adoptInstead(UNormalizer2*)
Unexecuted instantiation: icu_70::LocalUCPTriePointer::adoptInstead(UCPTrie*)
Unexecuted instantiation: icu_70::LocalUHashtablePointer::adoptInstead(UHashtable*)
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::adoptInstead(UMutableCPTrie*)
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::adoptInstead(UEnumeration*)
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::adoptInstead(UResourceBundle*)
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::adoptInstead(ULanguageTag*)
Unexecuted instantiation: icu_70::LocalUConverterPointer::adoptInstead(UConverter*)
Unexecuted instantiation: icu_70::LocalUTextPointer::adoptInstead(UText*)
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::adoptInstead(UBreakIterator*)
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::adoptInstead(UCaseMap*)
Unexecuted instantiation: icu_70::LocalUCollatorPointer::adoptInstead(UCollator*)
Unexecuted instantiation: icu_70::LocalUCalendarPointer::adoptInstead(void**)
Unexecuted instantiation: icu_70::LocalUFormattablePointer::adoptInstead(void**)
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::adoptInstead(UFieldPositionIterator*)
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::adoptInstead(void**)
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::adoptInstead(void**)
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::adoptInstead(void**)
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::adoptInstead(UPluralRules*)
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::adoptInstead(UConstrainedFieldPosition*)
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::adoptInstead(UNumberFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::adoptInstead(UFormattedNumber*)
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::adoptInstead(URelativeDateTimeFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::adoptInstead(UFormattedRelativeDateTime*)
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::adoptInstead(ULocaleDisplayNames*)
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::adoptInstead(UListFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::adoptInstead(UFormattedList*)
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::adoptInstead(void**)
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::adoptInstead(UNumberRangeFormatter*)
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::adoptInstead(UFormattedNumberRange*)
587
0
        operator std::unique_ptr<Type, decltype(&closeFunction)> () && { \
588
0
            return std::unique_ptr<Type, decltype(&closeFunction)>(LocalPointerBase<Type>::orphan(), closeFunction); \
589
0
        } \
Unexecuted instantiation: icu_70::LocalUDataMemoryPointer::operator std::__1::unique_ptr<UDataMemory, void (*)(UDataMemory*)>() &&
Unexecuted instantiation: icu_70::LocalUSetPointer::operator std::__1::unique_ptr<USet, void (*)(USet*)>() &&
Unexecuted instantiation: icu_70::LocalUNormalizer2Pointer::operator std::__1::unique_ptr<UNormalizer2, void (*)(UNormalizer2*)>() &&
Unexecuted instantiation: icu_70::LocalUCPTriePointer::operator std::__1::unique_ptr<UCPTrie, void (*)(UCPTrie*)>() &&
Unexecuted instantiation: icu_70::LocalUHashtablePointer::operator std::__1::unique_ptr<UHashtable, void (*)(UHashtable*)>() &&
Unexecuted instantiation: icu_70::LocalUMutableCPTriePointer::operator std::__1::unique_ptr<UMutableCPTrie, void (*)(UMutableCPTrie*)>() &&
Unexecuted instantiation: icu_70::LocalUEnumerationPointer::operator std::__1::unique_ptr<UEnumeration, void (*)(UEnumeration*)>() &&
Unexecuted instantiation: icu_70::LocalUResourceBundlePointer::operator std::__1::unique_ptr<UResourceBundle, void (*)(UResourceBundle*)>() &&
Unexecuted instantiation: icu_70::LocalULanguageTagPointer::operator std::__1::unique_ptr<ULanguageTag, void (*)(ULanguageTag*)>() &&
Unexecuted instantiation: icu_70::LocalUConverterPointer::operator std::__1::unique_ptr<UConverter, void (*)(UConverter*)>() &&
Unexecuted instantiation: icu_70::LocalUTextPointer::operator std::__1::unique_ptr<UText, UText* (*)(UText*)>() &&
Unexecuted instantiation: icu_70::LocalUBreakIteratorPointer::operator std::__1::unique_ptr<UBreakIterator, void (*)(UBreakIterator*)>() &&
Unexecuted instantiation: icu_70::LocalUCaseMapPointer::operator std::__1::unique_ptr<UCaseMap, void (*)(UCaseMap*)>() &&
Unexecuted instantiation: icu_70::LocalUCollatorPointer::operator std::__1::unique_ptr<UCollator, void (*)(UCollator*)>() &&
Unexecuted instantiation: icu_70::LocalUCalendarPointer::operator std::__1::unique_ptr<void*, void (*)(void**)>() &&
Unexecuted instantiation: icu_70::LocalUFormattablePointer::operator std::__1::unique_ptr<void*, void (*)(void**)>() &&
Unexecuted instantiation: icu_70::LocalUFieldPositionIteratorPointer::operator std::__1::unique_ptr<UFieldPositionIterator, void (*)(UFieldPositionIterator*)>() &&
Unexecuted instantiation: icu_70::LocalUNumberFormatPointer::operator std::__1::unique_ptr<void*, void (*)(void**)>() &&
Unexecuted instantiation: icu_70::LocalUDateFormatPointer::operator std::__1::unique_ptr<void*, void (*)(void**)>() &&
Unexecuted instantiation: icu_70::LocalUDateTimePatternGeneratorPointer::operator std::__1::unique_ptr<void*, void (*)(void**)>() &&
Unexecuted instantiation: icu_70::LocalUPluralRulesPointer::operator std::__1::unique_ptr<UPluralRules, void (*)(UPluralRules*)>() &&
Unexecuted instantiation: icu_70::LocalUConstrainedFieldPositionPointer::operator std::__1::unique_ptr<UConstrainedFieldPosition, void (*)(UConstrainedFieldPosition*)>() &&
Unexecuted instantiation: icu_70::LocalUNumberFormatterPointer::operator std::__1::unique_ptr<UNumberFormatter, void (*)(UNumberFormatter*)>() &&
Unexecuted instantiation: icu_70::LocalUFormattedNumberPointer::operator std::__1::unique_ptr<UFormattedNumber, void (*)(UFormattedNumber*)>() &&
Unexecuted instantiation: icu_70::LocalURelativeDateTimeFormatterPointer::operator std::__1::unique_ptr<URelativeDateTimeFormatter, void (*)(URelativeDateTimeFormatter*)>() &&
Unexecuted instantiation: icu_70::LocalUFormattedRelativeDateTimePointer::operator std::__1::unique_ptr<UFormattedRelativeDateTime, void (*)(UFormattedRelativeDateTime*)>() &&
Unexecuted instantiation: icu_70::LocalULocaleDisplayNamesPointer::operator std::__1::unique_ptr<ULocaleDisplayNames, void (*)(ULocaleDisplayNames*)>() &&
Unexecuted instantiation: icu_70::LocalUListFormatterPointer::operator std::__1::unique_ptr<UListFormatter, void (*)(UListFormatter*)>() &&
Unexecuted instantiation: icu_70::LocalUFormattedListPointer::operator std::__1::unique_ptr<UFormattedList, void (*)(UFormattedList*)>() &&
Unexecuted instantiation: icu_70::LocalUMessageFormatPointer::operator std::__1::unique_ptr<void*, void (*)(void**)>() &&
Unexecuted instantiation: icu_70::LocalUNumberRangeFormatterPointer::operator std::__1::unique_ptr<UNumberRangeFormatter, void (*)(UNumberRangeFormatter*)>() &&
Unexecuted instantiation: icu_70::LocalUFormattedNumberRangePointer::operator std::__1::unique_ptr<UFormattedNumberRange, void (*)(UFormattedNumberRange*)>() &&
590
    }
591
592
U_NAMESPACE_END
593
594
#endif  /* U_SHOW_CPLUSPLUS_API */
595
#endif  /* __LOCALPOINTER_H__ */