RFR: 8298730: Refactor subsystem_file_line_contents and add docs and tests [v2]
Johan Sjölen
jsjolen at openjdk.org
Wed Dec 14 19:14:41 UTC 2022
> Hi!
>
> Citing the ticket directly:
>
> The function subsystem_file_line_contents does the simple job of parsing lines in a file, but does so in a fairly complex way. This function can be simplified. The function also has a surprising API, as you need to know that in one case the format string needs to take 2 specifiers, instead of 1.
>
> Some more context:
>
> `subsystem_file_line_contents` either parses files that look like this:
>
>
> one_value
>
>
> Called as: `subsystem_file_line_contents(ctrl, fname, nullptr, "%s")`
>
> Or like this:
>
>
> key1 val1
> key2 val2
>
>
> Called as: `subsystem_file_line_contents(ctrl, fname, "key1", "%s %s")`
>
> The API for the key/value case is changed to: `subsystem_file_line_contents(ctrl, fname, "key1", "%s")`. Note: `"%s"`, not `"%s %s"`.
Johan Sjölen has updated the pull request incrementally with seven additional commits since the last revision:
- Split into single-line and multiple-line tests
- Rename tests
- Revert
- Specify buffer limit in format specifier
- Fix log string
- Allow other whitespace than space, add test for \t
- More tests, including JULONG and JLONG.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/11667/files
- new: https://git.openjdk.org/jdk/pull/11667/files/ce308c66..149646fe
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=11667&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=11667&range=00-01
Stats: 88 lines in 5 files changed: 57 ins; 24 del; 7 mod
Patch: https://git.openjdk.org/jdk/pull/11667.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/11667/head:pull/11667
PR: https://git.openjdk.org/jdk/pull/11667
More information about the hotspot-runtime-dev
mailing list