12 import java.nio.{ByteBuffer, CharBuffer} |
12 import java.nio.{ByteBuffer, CharBuffer} |
13 import java.nio.charset.{Charset, CharsetDecoder, CharsetEncoder, CoderResult} |
13 import java.nio.charset.{Charset, CharsetDecoder, CharsetEncoder, CoderResult} |
14 import java.nio.charset.spi.CharsetProvider |
14 import java.nio.charset.spi.CharsetProvider |
15 |
15 |
16 |
16 |
17 object Isabelle_Charset |
17 object Isabelle_Charset { |
18 { |
|
19 val name: String = "UTF-8-Isabelle-test" // FIXME |
18 val name: String = "UTF-8-Isabelle-test" // FIXME |
20 lazy val charset: Charset = new Isabelle_Charset |
19 lazy val charset: Charset = new Isabelle_Charset |
21 } |
20 } |
22 |
21 |
23 |
22 |
24 class Isabelle_Charset extends Charset(Isabelle_Charset.name, null) |
23 class Isabelle_Charset extends Charset(Isabelle_Charset.name, null) { |
25 { |
|
26 override def contains(cs: Charset): Boolean = |
24 override def contains(cs: Charset): Boolean = |
27 cs.name.equalsIgnoreCase(UTF8.charset_name) || UTF8.charset.contains(cs) |
25 cs.name.equalsIgnoreCase(UTF8.charset_name) || UTF8.charset.contains(cs) |
28 |
26 |
29 override def newDecoder(): CharsetDecoder = UTF8.charset.newDecoder |
27 override def newDecoder(): CharsetDecoder = UTF8.charset.newDecoder |
30 |
28 |
31 override def newEncoder(): CharsetEncoder = UTF8.charset.newEncoder |
29 override def newEncoder(): CharsetEncoder = UTF8.charset.newEncoder |
32 } |
30 } |
33 |
31 |
34 |
32 |
35 class Isabelle_Charset_Provider extends CharsetProvider |
33 class Isabelle_Charset_Provider extends CharsetProvider { |
36 { |
34 override def charsetForName(name: String): Charset = { |
37 override def charsetForName(name: String): Charset = |
|
38 { |
|
39 // FIXME inactive |
35 // FIXME inactive |
40 // if (name.equalsIgnoreCase(Isabelle_Charset.name)) Isabelle_Charset.charset |
36 // if (name.equalsIgnoreCase(Isabelle_Charset.name)) Isabelle_Charset.charset |
41 // else null |
37 // else null |
42 null |
38 null |
43 } |
39 } |
44 |
40 |
45 override def charsets(): java.util.Iterator[Charset] = |
41 override def charsets(): java.util.Iterator[Charset] = { |
46 { |
|
47 // FIXME inactive |
42 // FIXME inactive |
48 // Iterator(Isabelle_Charset.charset) |
43 // Iterator(Isabelle_Charset.charset) |
49 JList.of[Charset]().listIterator() |
44 JList.of[Charset]().listIterator() |
50 } |
45 } |
51 } |
46 } |