> java.util.HexFormat utility:
> 
>  - Format and parse hexadecimal strings, with parameters for delimiter, 
> prefix, suffix and upper/lowercase
>  - Static factories and builder methods to create HexFormat copies with 
> modified parameters.
>  - Consistent naming of methods for conversion of byte arrays to formatted 
> strings and back: formatHex and parseHex
>  - Consistent naming of methods for conversion of primitive types: 
> toHexDigits... and fromHexDigits...
>  - Prefix and suffixes now apply to each formatted value, not the string as a 
> whole
>  - Using java.util.Appendable as a target for buffered conversions so output 
> to Writers and PrintStreams
>    like System.out are supported in addition to StringBuilder. (IOExceptions 
> are converted to unchecked exceptions)
>  - Immutable and thread safe, a "value-based" class
> 
> See the [HexFormat 
> javadoc](http://cr.openjdk.java.net/~rriggs/8251989-hex-formatter/java.base/java/util/HexFormat.html)
>  for details.
> 
> Review comments and suggestions welcome.

Roger Riggs has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains 19 additional commits since the 
last revision:

 - Clarified that suffix() and prefix() methods do not return null, instead the 
empty string is returned.
 - Merge branch 'master' into 8251989-hex-formatter
 - Merge branch 'master' into 8251989-hex-formatter
 - Merge branch 'master' into 8251989-hex-formatter
 - The HexFormat API indexing model for array and string ranges is changed
   to describe the range using 'fromIndex (inclusive)' and 'toIndex 
(exclusive)'.
   
   Initially, it was specified as 'index' and 'length'. However, both byte 
arrays
   and strings used in the HexFormat API typically use fromIndex and toIndex
   to describe ranges.  Using the same indexing model can prevent mistakes.
   
   The change affects the methods and corresponding tests:
   
       formatHex(byte[] bytes, int fromIndex, int toIndex)
       formatHex(A out, byte[] bytes, int fromIndex, int toIndex)
       parseHex(char[] chars, int fromIndex, int toIndex)
       parseHex(CharSequence string, int fromIndex, int toIndex)
       fromHexDigits(CharSequence string, int fromIndex, int toIndex)
       fromHexDigitsToLong(CharSequence string, int fromIndex, int toIndex)
 - - Added @see and @link references to Integer.toHexString and Long.toHexString
   - Clarified parsing is case insensistive in various parse and fromXXX methods
   - Source level cleanup based on review comments
   - Expanded some javadoc tag text to make it more descriptive
   - Consistent use of 'hexadecimal' vs 'hex'
 - Review comment updates to class javadoc
 - Review comment updates, in the example code, and to describe the characters 
used to convert to hexadecimal
 - Correct length of StringBuilder in formatHex;
   Correct bug in formatHex(char[], 2, 3) and add test for subranges of char[]
 - Merge branch 'master' into 8251989-hex-formatter
 - ... and 9 more: https://git.openjdk.java.net/jdk/compare/8444acfa...b19d2827

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/482/files
  - new: https://git.openjdk.java.net/jdk/pull/482/files/2aeab7d7..b19d2827

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=482&range=09
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=482&range=08-09

  Stats: 384227 lines in 3445 files changed: 245788 ins; 106656 del; 31783 mod
  Patch: https://git.openjdk.java.net/jdk/pull/482.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/482/head:pull/482

PR: https://git.openjdk.java.net/jdk/pull/482

Reply via email to