Loosen type restriction on Ryu.writeshortest
#57172
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Ryu.writeshortestis documented to have a method that "allows passing in a byte buffer", just likeRyu.writefixedandRyu.writeexp, but unlike those functionswriteshortestis type constrained to::Vector{UInt8}. This PR loosens that to::AbstractVector{UInt8}, to allow the "byte buffer" to e.g. be aMemoryrather than aVector.I've added tests and updated the docstrings for all three functions to ensure that they're not just restricted to
Vector{UInt8}.This change was prompted by our private codebase hitting
MethodError: no method matching writeshortest(::Memory{UInt8}, ::Int64, ::Float64, ...)when trying it out with Julia v1.12.0-DEV.(cc @quinnj -- i think you added this method originally, but i couldn't see any reason why e.g. Memory shouldn't be allowed now we have it)