Comments (2)
It should be possible to rename the variant itself and add a deprecated const item to the impl with the previous variant (or just add STX
as the const item).
Something as such:
impl AsciiChar {
#[deprecated("Use `AsciiChar::STX`")]
pub const SOX: Self = Self::STX;
}
This should be technically non-breaking, even in match
arms, as AsciiChar
is both PartialEq
and Eq
, but not sure if it could break elsewhere.
from rust-ascii.
Renaming the variant breaks use
s, both globs and explicit:
use ascii::AsciiChar::*; // Warning, unused.
let _ = SOX; // Error, did you mean SO?
use AsciiChar::SOX; // Error, did you mean SOH?
I couldn't find much about importing associated constants, other than a thread saying it's not supported and another thread explaining why. (the linked reference page doesn't make it clear at all).
I'll deprecate the variant, and then maybe rename with associated constant as fallback in a later version.
On the other hand I doubt which way it's done matters,
as I assume the only reason to glob-import will be to create a hardcoded &AsciiStr
from &[AsciiChar]
with printable characters. And use
ing select characters seems rather pointless.
from rust-ascii.
Related Issues (20)
- Feature request: public iterator types
- Add AsciiCStr and AsciiCString types
- Add support for extended ascii HOT 2
- What is the intended behaviour of AsciiStr.lines()? HOT 2
- Implement `std::str::pattern::Pattern`
- Most functions could be const HOT 4
- Update quickcheck dependency to 0.8 HOT 7
- Publish next version to crate.io? HOT 1
- Implementing `From<&mut AsciiStr>` for `&mut str` and `&mut [u8]` is unsound HOT 8
- Mark AsciiStr `#[repr(transparent)]` ? HOT 2
- Versions 0.7.0-0.9.2 are yanked? HOT 1
- All files in crate are executables HOT 1
- AsciiChar::Caret documentation shows '_' HOT 1
- Easy way to get a &str or even just &AsciiStr out of [AsciiChar; _], &[AsciiChar; _] or &[AsciiChar] HOT 2
- Publish new version with the alloc feature? HOT 6
- Create `AsciiStr` from `str` using `const fn`
- Convert to and from AsciiString and Box<AsciiStr> HOT 1
- Benchmark HOT 2
- `serde_test` should be dev-dependency HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rust-ascii.