Skip to content

Tracking Issue for APC #316: In-place case change methods for String #135885

Open
@krtab

Description

@krtab

Feature gate: #![feature(string_make_uplowercase)]

This is a tracking issue for APC #316

This APC proposes that a new API is added to String to change cases and do so efficiently by consuming self and reusing the buffer, not allocating in most cases.

The exact implementation remains to be discussed, but the idea would be that in cases where it is possible, the case change is done in place. Once that isn't possible, a auxiliary DE-queue can be used to store bytes temporarily.

Public API

This would add the following methods (names to be determined)

impl String {
	fn into_uppercase(&mut self);
	fn into_lowercase(&mut self);
}

Steps / History

Unresolved Questions

  • None yet.

Footnotes

  1. https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html

Metadata

Metadata

Assignees

Labels

C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions