pub enum Edition {
V2023_01,
V2023_10,
V2023_11,
V2024_07,
V2025_12,
}Expand description
The Cairo edition of a crate.
Editions are a mechanism to allow breaking changes in the compiler. Compiler minor version updates will always support all editions supported by the previous updates with the same major version. Compiler major version updates may remove support for older editions. Editions may be added to provide features that are not backwards compatible, while allowing user to opt-in to them, and be ready for later compiler updates.
Variants§
V2023_01
The base edition, dated for the first release of the compiler.
V2023_10
V2023_11
V2024_07
V2025_12
Implementations§
Source§impl Edition
impl Edition
Sourcepub const fn latest() -> Self
pub const fn latest() -> Self
Returns the latest stable edition.
This Cairo edition is recommended for use in new projects and, in case of existing projects, to migrate to when possible.
Sourcepub fn prelude_submodule_name<'db>(
&self,
db: &'db dyn Database,
) -> SmolStrId<'db>
pub fn prelude_submodule_name<'db>( &self, db: &'db dyn Database, ) -> SmolStrId<'db>
The name of the prelude submodule of core::prelude for this compatibility version.
Sourcepub fn ignore_visibility(&self) -> bool
pub fn ignore_visibility(&self) -> bool
Whether to ignore visibility modifiers.
Sourcepub fn member_access_desnaps(&self) -> bool
pub fn member_access_desnaps(&self) -> bool
Whether to member access have the original type of the member.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Edition
impl<'de> Deserialize<'de> for Edition
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Copy for Edition
impl Eq for Edition
impl StructuralPartialEq for Edition
Auto Trait Implementations§
impl Freeze for Edition
impl RefUnwindSafe for Edition
impl Send for Edition
impl Sync for Edition
impl Unpin for Edition
impl UnwindSafe for Edition
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)Source§impl<'db, T> DebugDbUpcast<'db, T> for Twhere
T: ?Sized,
impl<'db, T> DebugDbUpcast<'db, T> for Twhere
T: ?Sized,
fn debug_db_upcast(&'db self) -> &'db T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more