pub struct CssPropertyWithConditionsVec {
pub run_destructor: bool,
/* private fields */
}Fields§
§run_destructor: boolWhether to run the destructor on drop (prevents double-free when cloned to C)
Implementations§
Source§impl CssPropertyWithConditionsVec
impl CssPropertyWithConditionsVec
pub fn new() -> CssPropertyWithConditionsVec
pub fn with_capacity(cap: usize) -> Self
pub const fn from_const_slice( input: &'static [CssPropertyWithConditions], ) -> Self
pub fn from_vec(input: Vec<CssPropertyWithConditions>) -> Self
pub fn iter(&self) -> Iter<'_, CssPropertyWithConditions>
pub fn ptr_as_usize(&self) -> usize
pub const fn len(&self) -> usize
pub const fn capacity(&self) -> usize
pub const fn is_empty(&self) -> bool
Sourcepub fn get(&self, index: usize) -> Option<&CssPropertyWithConditions>
pub fn get(&self, index: usize) -> Option<&CssPropertyWithConditions>
Returns a reference to the element at the given index (Rust-only, inline).
Sourcepub fn c_get(&self, index: usize) -> OptionCssPropertyWithConditionswhere
CssPropertyWithConditions: Clone,
pub fn c_get(&self, index: usize) -> OptionCssPropertyWithConditionswhere
CssPropertyWithConditions: Clone,
C-API compatible get function. Returns a copy of the element at the given index. Returns None if the index is out of bounds.
Sourcepub fn as_slice(&self) -> &[CssPropertyWithConditions]
pub fn as_slice(&self) -> &[CssPropertyWithConditions]
Returns the vec as a Rust slice (Rust-only, not C-API compatible).
Sourcepub fn as_c_slice(&self) -> CssPropertyWithConditionsVecSlice
pub fn as_c_slice(&self) -> CssPropertyWithConditionsVecSlice
Returns a C-compatible slice of the entire Vec.
Sourcepub fn as_c_slice_range(
&self,
start: usize,
end: usize,
) -> CssPropertyWithConditionsVecSlice
pub fn as_c_slice_range( &self, start: usize, end: usize, ) -> CssPropertyWithConditionsVecSlice
Returns a C-compatible slice of a range within the Vec. If the range is out of bounds, it is clamped to the valid range.
Sourcepub fn as_ptr(&self) -> *const CssPropertyWithConditions
pub fn as_ptr(&self) -> *const CssPropertyWithConditions
Returns a pointer to the Vec’s data.
Use len() to get the number of elements.
Source§impl CssPropertyWithConditionsVec
impl CssPropertyWithConditionsVec
pub fn from_copy_on_write( input: Cow<'static, [CssPropertyWithConditions]>, ) -> CssPropertyWithConditionsVec
Sourcepub fn from_item(item: CssPropertyWithConditions) -> Self
pub fn from_item(item: CssPropertyWithConditions) -> Self
Creates a Vec containing a single element
Sourcepub unsafe fn copy_from_ptr(
ptr: *const CssPropertyWithConditions,
len: usize,
) -> Self
pub unsafe fn copy_from_ptr( ptr: *const CssPropertyWithConditions, len: usize, ) -> Self
Copies elements from a C array pointer into a new Vec.
§Safety
ptrmust be valid for readinglenelements- The memory must be properly aligned for
$struct_type - The elements are cloned, so
$struct_typemust implementClone
Sourcepub fn clone_self(&self) -> Self
pub fn clone_self(&self) -> Self
NOTE: CLONES the memory if the memory is external or &’static Moves the memory out if the memory is library-allocated
Sourcepub fn into_library_owned_vec(self) -> Vec<CssPropertyWithConditions>
pub fn into_library_owned_vec(self) -> Vec<CssPropertyWithConditions>
NOTE: CLONES the memory if the memory is external or &’static Moves the memory out if the memory is library-allocated
Source§impl CssPropertyWithConditionsVec
impl CssPropertyWithConditionsVec
Sourcepub fn parse(style: &str) -> Self
pub fn parse(style: &str) -> Self
Parse CSS with support for selectors and nesting.
Supports:
- Simple properties:
color: red; - Pseudo-selectors:
:hover { background: blue; } - @-rules:
@os linux { font-size: 14px; } - Nesting:
@os linux { font-size: 14px; :hover { color: red; }}
Examples:
// Simple inline styles
CssPropertyWithConditionsVec::parse("color: red; font-size: 14px;")
// With hover state
CssPropertyWithConditionsVec::parse(":hover { background: blue; }")
// OS-specific with nested hover
CssPropertyWithConditionsVec::parse("@os linux { font-size: 14px; :hover { color: red; }}")Sourcepub fn parse_normal(style: &str) -> Self
pub fn parse_normal(style: &str) -> Self
Parse CSS properties from a string, all with “normal” (unconditional) state
Deprecated: Use parse() instead which supports selectors and nesting
Sourcepub fn parse_hover(style: &str) -> Self
pub fn parse_hover(style: &str) -> Self
Parse CSS properties from a string, all with hover condition
Deprecated: Use parse(":hover { ... }") instead
Sourcepub fn parse_active(style: &str) -> Self
pub fn parse_active(style: &str) -> Self
Parse CSS properties from a string, all with active condition
Deprecated: Use parse(":active { ... }") instead
Sourcepub fn parse_focus(style: &str) -> Self
pub fn parse_focus(style: &str) -> Self
Parse CSS properties from a string, all with focus condition
Deprecated: Use parse(":focus { ... }") instead