public final class StringSupport extends Object
Modifier and Type | Class and Description |
---|---|
static class |
StringSupport.NeighborChar
succ
|
static class |
StringSupport.TR
rb_str_tr / rb_str_tr_bang
|
static class |
StringSupport.TrTables
tr_setup_table
|
Modifier and Type | Field and Description |
---|---|
static int |
CR_7BIT |
static int |
CR_BROKEN |
static int |
CR_MASK |
static int |
CR_UNKNOWN |
static int |
CR_VALID |
static int |
TRANS_SIZE |
static Object |
UNSAFE |
Constructor and Description |
---|
StringSupport() |
Modifier and Type | Method and Description |
---|---|
static void |
associateEncoding(CodeRangeable string,
org.jcodings.Encoding enc) |
static int |
bytesToFixBrokenTrailingCharacter(byte[] bytes,
int begin,
int byteSize,
org.jcodings.Encoding encoding,
int usingLength) |
static int |
bytesToFixBrokenTrailingCharacter(org.jruby.util.ByteList val,
int usingLength) |
static int |
caseCmp(byte[] bytes1,
int p1,
byte[] bytes2,
int p2,
int len) |
static RubyString |
checkEmbeddedNulls(Ruby runtime,
IRubyObject ptr) |
static void |
checkStringSafety(Ruby runtime,
IRubyObject value)
Check whether input object's string value contains a null byte, and if so
throw SecurityError.
|
static int |
codeLength(Ruby runtime,
org.jcodings.Encoding enc,
int c) |
static int |
codePoint(Ruby runtime,
org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static String |
codeRangeAsString(int codeRange) |
static int |
codeRangeScan(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int len) |
static int |
codeRangeScan(org.jcodings.Encoding enc,
org.jruby.util.ByteList bytes) |
static long |
codeRangeScanRestartable(org.jcodings.Encoding enc,
byte[] bytes,
int s,
int end,
int cr) |
static int |
CONSTRUCT_MBCLEN_CHARFOUND(int n) |
static int |
countCommon19(org.jruby.util.ByteList value,
Ruby runtime,
boolean[] table,
StringSupport.TrTables tables,
org.jcodings.Encoding enc)
rb_str_count
|
static org.jruby.util.ByteList |
dumpCommon(Ruby runtime,
org.jruby.util.ByteList byteList)
rb_str_dump
|
static int |
encFastMBCLen(byte[] bytes,
int p,
int e,
org.jcodings.Encoding enc) |
static String |
escapedCharFormat(int c,
boolean isUnicode) |
static long |
getAscii(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static long |
getAscii(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end,
int len) |
static int |
hexLength(byte[] bytes,
int p,
int len) |
static int |
hexLength(byte[] bytes,
int p,
int len,
org.jcodings.Encoding enc) |
static int |
index(CodeRangeable sourceString,
CodeRangeable otherString,
int offset,
org.jcodings.Encoding enc) |
static boolean |
isEVStr(byte[] bytes,
int p,
int end) |
static boolean |
isEVStr(int c) |
static boolean |
isIncompleteChar(int b) |
static boolean |
isSingleByteOptimizable(CodeRangeable string,
org.jcodings.Encoding encoding) |
static boolean |
isUnicode(org.jcodings.Encoding enc) |
static int |
length(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static int |
MBCLEN_CHARFOUND_LEN(int r) |
static boolean |
MBCLEN_CHARFOUND_P(int r) |
static boolean |
MBCLEN_INVALID_P(int r) |
static boolean |
MBCLEN_NEEDMORE_P(int r) |
static int |
MBCLEN_NEEDMORE(int n) |
static int |
memchr(byte[] ptr,
int start,
int find,
int len) |
static int |
nth(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end,
int n) |
static int |
octLength(byte[] bytes,
int p,
int len) |
static int |
octLength(byte[] bytes,
int p,
int len,
org.jcodings.Encoding enc) |
static int |
offset(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end,
int n) |
static int |
offset(RubyString str,
int pos) |
static int |
positionEndForScan(org.jruby.util.ByteList value,
org.joni.Matcher matcher,
org.jcodings.Encoding enc,
int begin,
int range)
rb_str_scan
|
static int |
preciseCodePoint(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static int |
preciseLength(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static org.jruby.util.ByteList |
replaceInternal(int beg,
int len,
ByteListHolder source,
CodeRangeable repl) |
static void |
replaceInternal19(int beg,
int len,
CodeRangeable source,
CodeRangeable repl) |
static int |
rindex(org.jruby.util.ByteList source,
int sourceLen,
int subLen,
int endPosition,
CodeRangeable subStringCodeRangeable,
org.jcodings.Encoding enc)
rb_str_rindex_m
|
static int |
scanHex(byte[] bytes,
int p,
int len) |
static int |
scanHex(byte[] bytes,
int p,
int len,
org.jcodings.Encoding enc) |
static int |
scanOct(byte[] bytes,
int p,
int len) |
static int |
scanOct(byte[] bytes,
int p,
int len,
org.jcodings.Encoding enc) |
static int |
searchNonAscii(byte[] bytes,
int p,
int end) |
static int |
searchNonAscii(org.jruby.util.ByteList bytes) |
static RubyString |
strFillTerm(RubyString str,
byte[] sBytes,
int s,
int len,
int oldtermlen,
int termlen) |
static int |
strLength(org.jruby.util.ByteList bytes) |
static int |
strLength(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static int |
strLengthFromRubyString(CodeRangeable string) |
static int |
strLengthFromRubyString(CodeRangeable string,
org.jcodings.Encoding enc) |
static long |
strLengthWithCodeRange(org.jruby.util.ByteList bytes) |
static long |
strLengthWithCodeRange(org.jruby.util.ByteList bytes,
org.jcodings.Encoding enc) |
static long |
strLengthWithCodeRange(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int end) |
static int |
strNullChar(byte[] sBytes,
int s,
int len,
int minlen,
org.jcodings.Encoding enc) |
static StringSupport.NeighborChar |
succChar(org.jcodings.Encoding enc,
byte[] bytes,
int p,
int len) |
static org.jruby.util.ByteList |
succCommon(org.jruby.util.ByteList original) |
static void |
TERM_FILL(byte[] ptrBytes,
int ptr,
int termlen) |
static int |
toLower(org.jcodings.Encoding enc,
int c) |
static int |
toUpper(org.jcodings.Encoding enc,
int c) |
static boolean |
trFind(int c,
boolean[] table,
StringSupport.TrTables tables) |
static int |
trNext(StringSupport.TR t,
Ruby runtime,
org.jcodings.Encoding enc) |
static StringSupport.TrTables |
trSetupTable(org.jruby.util.ByteList value,
Ruby runtime,
boolean[] table,
StringSupport.TrTables tables,
boolean init,
org.jcodings.Encoding enc) |
static int |
unpackArg(long cr) |
static int |
unpackResult(long len) |
static int |
utf8Length(byte[] bytes,
int p,
int end) |
static int |
utf8Length(org.jruby.util.ByteList bytes) |
static int |
utf8Nth(byte[] bytes,
int p,
int e,
int nth) |
static int |
utf8Offset(byte[] bytes,
int p,
int end,
int n) |
static boolean |
zeroFilled(byte[] sBytes,
int s,
int n) |
public static final int CR_MASK
public static final int CR_UNKNOWN
public static final int CR_7BIT
public static final int CR_VALID
public static final int CR_BROKEN
public static final Object UNSAFE
public static final int TRANS_SIZE
public static String codeRangeAsString(int codeRange)
public static int encFastMBCLen(byte[] bytes, int p, int e, org.jcodings.Encoding enc)
public static int length(org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static int preciseLength(org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static boolean MBCLEN_NEEDMORE_P(int r)
public static int MBCLEN_NEEDMORE(int n)
public static boolean MBCLEN_INVALID_P(int r)
public static int MBCLEN_CHARFOUND_LEN(int r)
public static boolean MBCLEN_CHARFOUND_P(int r)
public static int CONSTRUCT_MBCLEN_CHARFOUND(int n)
public static int searchNonAscii(byte[] bytes, int p, int end)
public static int searchNonAscii(org.jruby.util.ByteList bytes)
public static int codeRangeScan(org.jcodings.Encoding enc, byte[] bytes, int p, int len)
public static int codeRangeScan(org.jcodings.Encoding enc, org.jruby.util.ByteList bytes)
public static long codeRangeScanRestartable(org.jcodings.Encoding enc, byte[] bytes, int s, int end, int cr)
public static int utf8Length(byte[] bytes, int p, int end)
public static int utf8Length(org.jruby.util.ByteList bytes)
public static int strLength(org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static int strLength(org.jruby.util.ByteList bytes)
public static long strLengthWithCodeRange(org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static long strLengthWithCodeRange(org.jruby.util.ByteList bytes)
public static long strLengthWithCodeRange(org.jruby.util.ByteList bytes, org.jcodings.Encoding enc)
public static int unpackResult(long len)
public static int unpackArg(long cr)
public static int codePoint(Ruby runtime, org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static int codeLength(Ruby runtime, org.jcodings.Encoding enc, int c)
public static long getAscii(org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static long getAscii(org.jcodings.Encoding enc, byte[] bytes, int p, int end, int len)
public static int preciseCodePoint(org.jcodings.Encoding enc, byte[] bytes, int p, int end)
public static int utf8Nth(byte[] bytes, int p, int e, int nth)
public static int nth(org.jcodings.Encoding enc, byte[] bytes, int p, int end, int n)
public static int utf8Offset(byte[] bytes, int p, int end, int n)
public static int offset(org.jcodings.Encoding enc, byte[] bytes, int p, int end, int n)
public static int offset(RubyString str, int pos)
public static int toLower(org.jcodings.Encoding enc, int c)
public static int toUpper(org.jcodings.Encoding enc, int c)
public static int caseCmp(byte[] bytes1, int p1, byte[] bytes2, int p2, int len)
public static int scanHex(byte[] bytes, int p, int len)
public static int scanHex(byte[] bytes, int p, int len, org.jcodings.Encoding enc)
public static int hexLength(byte[] bytes, int p, int len)
public static int hexLength(byte[] bytes, int p, int len, org.jcodings.Encoding enc)
public static int scanOct(byte[] bytes, int p, int len)
public static int scanOct(byte[] bytes, int p, int len, org.jcodings.Encoding enc)
public static int octLength(byte[] bytes, int p, int len)
public static int octLength(byte[] bytes, int p, int len, org.jcodings.Encoding enc)
public static final void checkStringSafety(Ruby runtime, IRubyObject value)
runtime
- value
- public static boolean isUnicode(org.jcodings.Encoding enc)
public static String escapedCharFormat(int c, boolean isUnicode)
public static boolean isIncompleteChar(int b)
public static int bytesToFixBrokenTrailingCharacter(org.jruby.util.ByteList val, int usingLength)
public static int bytesToFixBrokenTrailingCharacter(byte[] bytes, int begin, int byteSize, org.jcodings.Encoding encoding, int usingLength)
public static int memchr(byte[] ptr, int start, int find, int len)
public static RubyString checkEmbeddedNulls(Ruby runtime, IRubyObject ptr)
public static int strNullChar(byte[] sBytes, int s, int len, int minlen, org.jcodings.Encoding enc)
public static boolean zeroFilled(byte[] sBytes, int s, int n)
public static RubyString strFillTerm(RubyString str, byte[] sBytes, int s, int len, int oldtermlen, int termlen)
public static void TERM_FILL(byte[] ptrBytes, int ptr, int termlen)
public static int positionEndForScan(org.jruby.util.ByteList value, org.joni.Matcher matcher, org.jcodings.Encoding enc, int begin, int range)
public static org.jruby.util.ByteList dumpCommon(Ruby runtime, org.jruby.util.ByteList byteList)
public static boolean isEVStr(byte[] bytes, int p, int end)
public static boolean isEVStr(int c)
public static int countCommon19(org.jruby.util.ByteList value, Ruby runtime, boolean[] table, StringSupport.TrTables tables, org.jcodings.Encoding enc)
public static int rindex(org.jruby.util.ByteList source, int sourceLen, int subLen, int endPosition, CodeRangeable subStringCodeRangeable, org.jcodings.Encoding enc)
public static int strLengthFromRubyString(CodeRangeable string, org.jcodings.Encoding enc)
public static int strLengthFromRubyString(CodeRangeable string)
public static StringSupport.TrTables trSetupTable(org.jruby.util.ByteList value, Ruby runtime, boolean[] table, StringSupport.TrTables tables, boolean init, org.jcodings.Encoding enc)
public static boolean trFind(int c, boolean[] table, StringSupport.TrTables tables)
public static int trNext(StringSupport.TR t, Ruby runtime, org.jcodings.Encoding enc)
public static org.jruby.util.ByteList succCommon(org.jruby.util.ByteList original)
public static StringSupport.NeighborChar succChar(org.jcodings.Encoding enc, byte[] bytes, int p, int len)
public static boolean isSingleByteOptimizable(CodeRangeable string, org.jcodings.Encoding encoding)
public static int index(CodeRangeable sourceString, CodeRangeable otherString, int offset, org.jcodings.Encoding enc)
public static void associateEncoding(CodeRangeable string, org.jcodings.Encoding enc)
public static org.jruby.util.ByteList replaceInternal(int beg, int len, ByteListHolder source, CodeRangeable repl)
public static void replaceInternal19(int beg, int len, CodeRangeable source, CodeRangeable repl)
Copyright © 2001-2015 JRuby. All Rights Reserved.