summaryrefslogtreecommitdiff
path: root/gnu/java/nio/charset/ByteCharset.java
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/java/nio/charset/ByteCharset.java')
-rw-r--r--gnu/java/nio/charset/ByteCharset.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/gnu/java/nio/charset/ByteCharset.java b/gnu/java/nio/charset/ByteCharset.java
index 2cc91b850..da0fdcbcd 100644
--- a/gnu/java/nio/charset/ByteCharset.java
+++ b/gnu/java/nio/charset/ByteCharset.java
@@ -156,6 +156,22 @@ abstract class ByteCharset extends Charset
}
}
+ public boolean canEncode(char c)
+ {
+ byte b = (c < lookup.length) ? lookup[c] : 0;
+ return b != 0 || c == 0;
+ }
+
+ public boolean canEncode(CharSequence cs)
+ {
+ for (int i = 0; i < cs.length(); ++i)
+ {
+ if (! canEncode(cs.charAt(i)))
+ return false;
+ }
+ return true;
+ }
+
protected CoderResult encodeLoop (CharBuffer in, ByteBuffer out)
{
// TODO: Optimize this in the case in.hasArray() / out.hasArray()