Skip to main content

BytesLiteralFlags

Struct BytesLiteralFlags 

Source
pub struct BytesLiteralFlags(/* private fields */);
Expand description

Flags that can be queried to obtain information regarding the prefixes and quotes used for a bytes literal.

§Notes on usage

If you’re using a Generator from the ruff_python_codegen crate to generate a lint-rule fix from an existing bytes literal, consider passing along the BytesLiteral::flags field. If you don’t have an existing literal but have a Checker from the ruff_linter crate available, consider using Checker::default_bytes_flags to create instances of this struct; this method will properly handle surrounding f-strings. For usage that doesn’t fit into one of these categories, the public constructor BytesLiteralFlags::empty can be used.

Implementations§

Source§

impl BytesLiteralFlags

Source

pub fn empty() -> BytesLiteralFlags

Construct a new BytesLiteralFlags with no flags set.

See BytesLiteralFlags::with_quote_style, BytesLiteralFlags::with_triple_quotes, and BytesLiteralFlags::with_prefix for ways of setting the quote style (single or double), enabling triple quotes, and adding prefixes (such as r), respectively.

See the documentation for BytesLiteralFlags for additional caveats on this constructor, and situations in which alternative ways to construct this struct should be used, especially when writing lint rules.

Source

pub fn with_quote_style(self, quote_style: Quote) -> BytesLiteralFlags

Source

pub fn with_triple_quotes( self, triple_quotes: TripleQuotes, ) -> BytesLiteralFlags

Source

pub fn with_unclosed(self, unclosed: bool) -> BytesLiteralFlags

Source

pub fn with_prefix(self, prefix: ByteStringPrefix) -> BytesLiteralFlags

Source

pub fn with_invalid(self) -> BytesLiteralFlags

Source

pub const fn prefix(self) -> ByteStringPrefix

Trait Implementations§

Source§

impl Clone for BytesLiteralFlags

Source§

fn clone(&self) -> BytesLiteralFlags

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BytesLiteralFlags

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl From<AnyStringFlags> for BytesLiteralFlags

Source§

fn from(value: AnyStringFlags) -> BytesLiteralFlags

Converts to this type from the input type.
Source§

impl From<BytesLiteralFlags> for AnyStringFlags

Source§

fn from(value: BytesLiteralFlags) -> AnyStringFlags

Converts to this type from the input type.
Source§

impl GetSize for BytesLiteralFlags

Source§

fn get_heap_size(&self) -> usize

Determines how many bytes this object occupies inside the heap. Read more
Source§

fn get_heap_size_with_tracker<TRACKER>( &self, tracker: TRACKER, ) -> (usize, TRACKER)
where TRACKER: GetSizeTracker,

Determines how many bytes this object occupies inside the heap while using a tracker. Read more
Source§

fn get_stack_size() -> usize

Determines how may bytes this object occupies inside the stack. Read more
Source§

fn get_size(&self) -> usize

Determines the total size of the object. Read more
Source§

fn get_size_with_tracker<T>(&self, tracker: T) -> (usize, T)
where T: GetSizeTracker,

Determines the total size of the object while using a tracker. Read more
Source§

impl Hash for BytesLiteralFlags

Source§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for BytesLiteralFlags

Source§

fn eq(&self, other: &BytesLiteralFlags) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StringFlags for BytesLiteralFlags

Source§

fn triple_quotes(self) -> TripleQuotes

Return true if the bytestring is triple-quoted, i.e., it begins and ends with three consecutive quote characters. For example: b"""{bar}"""

Source§

fn quote_style(self) -> Quote

Return the quoting style (single or double quotes) used by the bytestring’s opener and closer:

  • b"a" -> QuoteStyle::Double
  • b'a' -> QuoteStyle::Single
Source§

fn prefix(self) -> AnyStringPrefix

Source§

fn is_unclosed(self) -> bool

Source§

fn is_triple_quoted(self) -> bool

Is the string triple-quoted, i.e., does it begin and end with three consecutive quote characters?
Source§

fn quote_str(self) -> &'static str

A str representation of the quotes used to start and close. This does not include any prefixes the string has in its opener.
Source§

fn quote_len(self) -> TextSize

The length of the quotes used to start and close the string. This does not include the length of any prefixes the string has in its opener.
Source§

fn opener_len(self) -> TextSize

The total length of the string’s opener, i.e., the length of the prefixes plus the length of the quotes used to open the string.
Source§

fn closer_len(self) -> TextSize

The total length of the string’s closer. This is always equal to self.quote_len(), except when the string is unclosed, in which case the length is zero.
Source§

fn as_any_string_flags(self) -> AnyStringFlags

Source§

fn display_contents(self, contents: &str) -> DisplayFlags<'_>

Source§

impl Copy for BytesLiteralFlags

Source§

impl Eq for BytesLiteralFlags

Source§

impl StructuralPartialEq for BytesLiteralFlags

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T, U> ExactFrom<T> for U
where U: TryFrom<T>,

Source§

fn exact_from(value: T) -> U

Source§

impl<T, U> ExactInto<U> for T
where U: ExactFrom<T>,

Source§

fn exact_into(self) -> U

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<T, U> OverflowingInto<U> for T
where U: OverflowingFrom<T>,

Source§

impl<T, U> RoundingInto<U> for T
where U: RoundingFrom<T>,

Source§

impl<T, U> SaturatingInto<U> for T
where U: SaturatingFrom<T>,

Source§

impl<T> ToDebugString for T
where T: Debug,

Source§

fn to_debug_string(&self) -> String

Returns the String produced by Ts Debug implementation.

§Examples
use malachite_base::strings::ToDebugString;

assert_eq!([1, 2, 3].to_debug_string(), "[1, 2, 3]");
assert_eq!(
    [vec![2, 3], vec![], vec![4]].to_debug_string(),
    "[[2, 3], [], [4]]"
);
assert_eq!(Some(5).to_debug_string(), "Some(5)");
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T, U> WrappingInto<U> for T
where U: WrappingFrom<T>,

Source§

fn wrapping_into(self) -> U

Source§

impl<T> PyThreadingConstraint for T