pub enum SourceLayout {
SingleFile,
Chunked {
max_file_bytes: usize,
max_declarations: Option<usize>,
},
PerOperation,
PerResource {
max_file_bytes: usize,
max_declarations: Option<usize>,
},
}Expand description
A source layout preserves public entrypoints while grouping declarations. Atomic declarations may exceed a byte budget; they are never sliced.
Variants§
Implementations§
Source§impl SourceLayout
impl SourceLayout
pub fn chunked(max_file_bytes: usize) -> Self
pub fn per_resource(max_file_bytes: usize) -> Self
pub fn groups( &self, units: &[SourceUnit<'_>], overhead: usize, ) -> Result<Vec<Vec<usize>>>
pub fn uses_modules( &self, units: &[SourceUnit<'_>], overhead: usize, ) -> Result<bool>
Trait Implementations§
Source§impl Clone for SourceLayout
impl Clone for SourceLayout
Source§impl Debug for SourceLayout
impl Debug for SourceLayout
Source§impl Default for SourceLayout
impl Default for SourceLayout
Source§impl<'de> Deserialize<'de> for SourceLayout
impl<'de> Deserialize<'de> for SourceLayout
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for SourceLayout
Source§impl PartialEq for SourceLayout
impl PartialEq for SourceLayout
Source§impl Serialize for SourceLayout
impl Serialize for SourceLayout
impl StructuralPartialEq for SourceLayout
Auto Trait Implementations§
impl Freeze for SourceLayout
impl RefUnwindSafe for SourceLayout
impl Send for SourceLayout
impl Sync for SourceLayout
impl Unpin for SourceLayout
impl UnsafeUnpin for SourceLayout
impl UnwindSafe for SourceLayout
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more