decodes a bit of an url encoded by a browser . the string is expected to be encoded as per rfc 3986 , section 2 . this is the encoding used by javascript functions encodeuri and encodeuricomponent , but not escape . for example in this encoding , &eacute; in unicode u +00 e9 or in utf-8 0xc3 0xa9 is encoded as % c3 % a9 or % c3 % a9 . this is essentially equivalent to calling java.net.urldecoder urldecoder . java.net.urldecoder #decode string , string except that it 's over 2x faster and generates less garbage for the gc . actually this function does n't allocate any memory if there 's nothing to decode , the argument itself is returned . concode_field_sep PathTrie.Decoder REST_DECODER concode_field_sep Pattern checkCorsSettingForRegex concode_elem_sep void decodeQueryString concode_elem_sep void addParam concode_elem_sep char decodeHexNibble concode_elem_sep String[] corsSettingAsArray concode_elem_sep String decode concode_elem_sep int decode concode_elem_sep boolean decodingNeeded
String function ( final String arg0 , final Charset arg1 ) { if ( arg0 == null ) { return "srini_string" ; } final int loc0 = arg0 . length ( ) ; if ( ! decodingNeeded ( arg0 , loc0 ) ) { return arg0 ; } final byte [ ] loc1 = new byte [ loc0 ] ; int loc2 = decode ( arg0 , loc0 , loc1 ) ; return new String ( loc1 , 0 , loc2 , arg1 ) ; }