--- old/src/java.base/share/classes/sun/text/normalizer/ReplaceableString.java 2020-01-10 15:58:03.000000000 -0800 +++ /dev/null 2020-01-10 15:58:03.000000000 -0800 @@ -1,118 +0,0 @@ -/* - * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ - -/* - ******************************************************************************* - * Copyright (C) 1996-2009, International Business Machines Corporation and * - * others. All Rights Reserved. * - ******************************************************************************* - */ - -package sun.text.normalizer; - -/** - * ReplaceableString is an adapter class that implements the - * Replaceable API around an ordinary StringBuffer. - * - *

Note: This class does not support attributes and is not - * intended for general use. Most clients will need to implement - * {@link Replaceable} in their text representation class. - * - *

Copyright © IBM Corporation 1999. All rights reserved. - * - * @see Replaceable - * @author Alan Liu - * @stable ICU 2.0 - */ -class ReplaceableString implements Replaceable { - - private StringBuffer buf; - - /** - * Construct a new object with the given initial contents. - * @param str initial contents - * @stable ICU 2.0 - */ - public ReplaceableString(String str) { - buf = new StringBuffer(str); - } - - /** - * Construct a new object using buf for internal - * storage. The contents of buf at the time of - * construction are used as the initial contents. Note! - * Modifications to buf will modify this object, and - * vice versa. - * @param buf object to be used as internal storage - * @stable ICU 2.0 - */ - public ReplaceableString(StringBuffer buf) { - this.buf = buf; - } - - /** - * Return the number of characters contained in this object. - * Replaceable API. - * @stable ICU 2.0 - */ - public int length() { - return buf.length(); - } - - /** - * Return the character at the given position in this object. - * Replaceable API. - * @param offset offset into the contents, from 0 to - * length() - 1 - * @stable ICU 2.0 - */ - public char charAt(int offset) { - return buf.charAt(offset); - } - - /** - * Copies characters from this object into the destination - * character array. The first character to be copied is at index - * srcStart; the last character to be copied is at - * index srcLimit-1 (thus the total number of - * characters to be copied is srcLimit-srcStart). The - * characters are copied into the subarray of dst - * starting at index dstStart and ending at index - * dstStart + (srcLimit-srcStart) - 1. - * - * @param srcStart the beginning index to copy, inclusive; - * {@code 0 <= start <= limit}. - * @param srcLimit the ending index to copy, exclusive; - * {@code start <= limit <= length()}. - * @param dst the destination array. - * @param dstStart the start offset in the destination array. - * @stable ICU 2.0 - */ - public void getChars(int srcStart, int srcLimit, char dst[], int dstStart) { - if (srcStart != srcLimit) { - buf.getChars(srcStart, srcLimit, dst, dstStart); - } - } -} --- /dev/null 2020-01-10 15:58:03.000000000 -0800 +++ new/src/java.base/share/classes/jdk/internal/icu/text/ReplaceableString.java 2020-01-10 15:58:03.000000000 -0800 @@ -0,0 +1,118 @@ +/* + * Copyright (c) 2005, 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +/* + ******************************************************************************* + * Copyright (C) 1996-2009, International Business Machines Corporation and * + * others. All Rights Reserved. * + ******************************************************************************* + */ + +package jdk.internal.icu.text; + +/** + * ReplaceableString is an adapter class that implements the + * Replaceable API around an ordinary StringBuffer. + * + *

Note: This class does not support attributes and is not + * intended for general use. Most clients will need to implement + * {@link Replaceable} in their text representation class. + * + *

Copyright © IBM Corporation 1999. All rights reserved. + * + * @see Replaceable + * @author Alan Liu + * @stable ICU 2.0 + */ +public class ReplaceableString implements Replaceable { + + private StringBuffer buf; + + /** + * Construct a new object with the given initial contents. + * @param str initial contents + * @stable ICU 2.0 + */ + public ReplaceableString(String str) { + buf = new StringBuffer(str); + } + + /** + * Construct a new object using buf for internal + * storage. The contents of buf at the time of + * construction are used as the initial contents. Note! + * Modifications to buf will modify this object, and + * vice versa. + * @param buf object to be used as internal storage + * @stable ICU 2.0 + */ + public ReplaceableString(StringBuffer buf) { + this.buf = buf; + } + + /** + * Return the number of characters contained in this object. + * Replaceable API. + * @stable ICU 2.0 + */ + public int length() { + return buf.length(); + } + + /** + * Return the character at the given position in this object. + * Replaceable API. + * @param offset offset into the contents, from 0 to + * length() - 1 + * @stable ICU 2.0 + */ + public char charAt(int offset) { + return buf.charAt(offset); + } + + /** + * Copies characters from this object into the destination + * character array. The first character to be copied is at index + * srcStart; the last character to be copied is at + * index srcLimit-1 (thus the total number of + * characters to be copied is srcLimit-srcStart). The + * characters are copied into the subarray of dst + * starting at index dstStart and ending at index + * dstStart + (srcLimit-srcStart) - 1. + * + * @param srcStart the beginning index to copy, inclusive; + * {@code 0 <= start <= limit}. + * @param srcLimit the ending index to copy, exclusive; + * {@code start <= limit <= length()}. + * @param dst the destination array. + * @param dstStart the start offset in the destination array. + * @stable ICU 2.0 + */ + public void getChars(int srcStart, int srcLimit, char dst[], int dstStart) { + if (srcStart != srcLimit) { + buf.getChars(srcStart, srcLimit, dst, dstStart); + } + } +}