1## This file contains all cxx headers from i18n & common directories for shim 2## library generator which strips all C++ APIs. This file used to be present at 3## icu4c/source/test/hdrtst/cxxfiles.txt but after 65.1 it was removed so 4## (at least in 65.1 upgrade) it is manually constructed. 5## 6## To construct this file the following steps were performed 7## (pseudocode, variables refer sets, operators as in 8## https://docs.python.org/2/library/stdtypes.html#set): 9## 10## CXX64 = <files from cxxfiles.txt from ICU 64.2> 11## I18N = <files from icu4c/source/i18n/unicode> 12## COMMON = <files from icu4c/source/common/unicode> 13## NEW = CXX64 - (i18N | COMMON) 14## 15## Now manually filter out C headers from NEW set and paste them below, commenting 16## out non-C++ APIs which results only two new C++ files (localpointer and localematcher): 17#parseerr.h 18#icuplug.h 19#ptypes.h 20#utf_old.h 21#utf16.h 22#utf.h 23#utf8.h 24#utf32.h 25#stringoptions.h 26# icudataver.h 27# putil.h 28# docmain.h 29# platform.h 30 31# Android-changed: localpointer.h is required to generate libandroidicu headers 32# localpointer.h 33localematcher.h 34 35## Further until the end of file is a copy of cxxfiles.txt from ICU 64.2: 36# Copyright (C) 2016 and later: Unicode, Inc. and others. 37# License & terms of use: http://www.unicode.org/copyright.html 38# Copyright (c) 2001-2016 International Business Machines 39# Corporation and others. All Rights Reserved. 40# Begin temporary addition. 41# These are very bad "C" APIs that do not work with a C compiler and 42# violate many ICU coding guidelines. These were added with ticket #5996. 43# Temporarily marked as C++ for the hdrtst to pass. 44# These are gone in ICU 50.1, remove 45#vzone.h 46#zrule.h 47#ztrans.h 48# End temporary addition. 49# common & i18n 50alphaindex.h 51appendable.h 52bidi.h 53basictz.h 54bmsearch.h 55brkiter.h 56bytestream.h 57bytestrie.h 58bytestriebuilder.h 59calendar.h 60caniter.h 61casemap.h 62char16ptr.h 63chariter.h 64choicfmt.h 65coleitr.h 66coll.h 67colldata.h 68compactdecimalformat.h 69convert.h 70cpdtrans.h 71curramt.h 72currunit.h 73currpinf.h 74datefmt.h 75dbbi.h 76dcfmtsym.h 77decimfmt.h 78dtintrv.h 79dtitvinf.h 80dtitvfmt.h 81dtfmtsym.h 82dtptngen.h 83dtrule.h 84edits.h 85enumset.h 86errorcode.h 87fieldpos.h 88filteredbrk.h 89fmtable.h 90format.h 91formattedvalue.h 92fpositer.h 93gender.h 94gregocal.h 95idna.h 96listformatter.h 97localebuilder.h 98locdspnm.h 99locid.h 100measfmt.h 101measunit.h 102measure.h 103messagepattern.h 104msgfmt.h 105normalizer2.h 106normlzr.h 107nounit.h 108numberformatter.h 109numberrangeformatter.h 110numfmt.h 111numsys.h 112parsepos.h 113plurfmt.h 114plurrule.h 115rbbi.h 116rbnf.h 117rbtz.h 118regex.h 119region.h 120reldatefmt.h 121rep.h 122resbund.h 123schriter.h 124scientificformathelper.h 125scientificnumberformatter.h 126search.h 127selfmt.h 128simpleformatter.h 129simpletz.h 130smpdtfmt.h 131sortkey.h 132std_string.h 133strenum.h 134stringtriebuilder.h 135stringpiece.h 136stsearch.h 137symtable.h 138tblcoll.h 139timezone.h 140tmunit.h 141tmutamt.h 142tmutfmt.h 143translit.h 144tzfmt.h 145tznames.h 146tzrule.h 147tztrans.h 148ucharstrie.h 149ucharstriebuilder.h 150uchriter.h 151unifilt.h 152unifunct.h 153unimatch.h 154unirepl.h 155uniset.h 156unistr.h 157uobject.h 158usetiter.h 159vtzone.h 160# io library 161ustream.h 162# layout & layoutex 163LayoutEngine.h 164LEFontInstance.h 165LEGlyphFilter.h 166LEGlyphStorage.h 167LELanguages.h 168LEScripts.h 169LESwaps.h 170# LETypes.h -- C header 171# loengine.h -- C header 172ParagraphLayout.h 173RunArrays.h 174