> This Pull Requests proposes an implementation for 
> [JDK-8341566](https://bugs.openjdk.org/browse/JDK-8341566): Adding the new 
> method `public static Reader Reader.of(CharSequence)` will return an 
> anonymous, non-synchronized implementation of a `Reader` for each kind of 
> `CharSequence` implementation. It is optimized for `String`, `StringBuilder`, 
> `StringBuffer` and `CharBuffer`.
> 
> In addition, this Pull Request proposes to replace the implementation of 
> `StringReader` to become a simple synchronized wrapper around 
> `Reader.of(CharSequence)` for the case of `String` sources. To ensure 
> correctness, this PR...
> * ...simply moved the **original code** of `StringBuilder` to become the 
> de-facto implementation of `Reader.of()`, then stripped synchronized from it 
> on the left hand, but kept just a synchronized wrapper on the right hand. 
> Then added a `switch` for optimizations within the original code, at the 
> exact location where previously just an optimization for `String` lived in.
> * ...added tests for all methods (`Of.java`), and applied that test upon the 
> modified `StringBuilder`.
> 
> Wherever new JavaDocs were added, existing phrases from other code locations 
> have been copied and adapted, to best match the same wording.

Markus KARG has updated the pull request incrementally with one additional 
commit since the last revision:

  Fixed wording according to CSR discussion: '<p> The reader is initially open 
and reading starts at the first character in the sequence.'

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/21371/files
  - new: https://git.openjdk.org/jdk/pull/21371/files/6666f02d..a668f24e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=21371&range=13
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=21371&range=12-13

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/21371.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21371/head:pull/21371

PR: https://git.openjdk.org/jdk/pull/21371

Reply via email to