1 /*
2 * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
628 /**
629 * Returns the name of this subset.
630 */
631 public final String toString() {
632 return name;
633 }
634 }
635
636 // See http://www.unicode.org/Public/UNIDATA/Blocks.txt
637 // for the latest specification of Unicode Blocks.
638
639 /**
640 * A family of character subsets representing the character blocks in the
641 * Unicode specification. Character blocks generally define characters
642 * used for a specific script or purpose. A character is contained by
643 * at most one Unicode block.
644 *
645 * @since 1.2
646 */
647 public static final class UnicodeBlock extends Subset {
648
649 private static Map<String, UnicodeBlock> map = new HashMap<>(256);
650
651 /**
652 * Creates a UnicodeBlock with the given identifier name.
653 * This name must be the same as the block identifier.
654 */
655 private UnicodeBlock(String idName) {
656 super(idName);
657 map.put(idName, this);
658 }
659
660 /**
661 * Creates a UnicodeBlock with the given identifier name and
662 * alias name.
663 */
664 private UnicodeBlock(String idName, String alias) {
665 this(idName);
666 map.put(alias, this);
667 }
668
669 /**
|
1 /*
2 * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
628 /**
629 * Returns the name of this subset.
630 */
631 public final String toString() {
632 return name;
633 }
634 }
635
636 // See http://www.unicode.org/Public/UNIDATA/Blocks.txt
637 // for the latest specification of Unicode Blocks.
638
639 /**
640 * A family of character subsets representing the character blocks in the
641 * Unicode specification. Character blocks generally define characters
642 * used for a specific script or purpose. A character is contained by
643 * at most one Unicode block.
644 *
645 * @since 1.2
646 */
647 public static final class UnicodeBlock extends Subset {
648 private static final int INITIAL_CAPACITY = (int)(510 / 0.75f);
649 private static Map<String, UnicodeBlock> map =
650 new HashMap<>(INITIAL_CAPACITY);
651
652 /**
653 * Creates a UnicodeBlock with the given identifier name.
654 * This name must be the same as the block identifier.
655 */
656 private UnicodeBlock(String idName) {
657 super(idName);
658 map.put(idName, this);
659 }
660
661 /**
662 * Creates a UnicodeBlock with the given identifier name and
663 * alias name.
664 */
665 private UnicodeBlock(String idName, String alias) {
666 this(idName);
667 map.put(alias, this);
668 }
669
670 /**
|