pub enum Dependency {
Local(CellRef),
LocalColumn(usize),
Remote {
sheet: String,
cell: CellRef,
},
RemoteColumn {
sheet: String,
col: usize,
},
}Expand description
Something a formula reads, and therefore an edge in the recalculation graph.
The local/remote split is load-bearing. Sheet::commit propagates through
the Local variants only – a sheet cannot reach into its neighbors, so a
remote edge it finds is recorded but not followed. Chasing those is
WorkbookManager::evaluate’s job, which marks every sheet dirty and runs a
fixed number of passes over the workbook; a cross-sheet chain deeper than
that number of hops will not have converged when it stops.
Remote variants key on the sheet name rather than its id, since that is
what a formula’s text carries and what Context is indexed by.
Variants§
Local(CellRef)
A cell on the same sheet.
LocalColumn(usize)
A whole column on the same sheet, by 0-based position.
Remote
A cell on another sheet.
RemoteColumn
A whole column on another sheet.
Trait Implementations§
Source§impl Clone for Dependency
impl Clone for Dependency
Source§fn clone(&self) -> Dependency
fn clone(&self) -> Dependency
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Dependency
impl Debug for Dependency
Source§impl<'de> Deserialize<'de> for Dependency
impl<'de> Deserialize<'de> for Dependency
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 Eq for Dependency
Source§impl Hash for Dependency
impl Hash for Dependency
Source§impl PartialEq for Dependency
impl PartialEq for Dependency
Source§impl Serialize for Dependency
impl Serialize for Dependency
impl StructuralPartialEq for Dependency
Auto Trait Implementations§
impl Freeze for Dependency
impl RefUnwindSafe for Dependency
impl Send for Dependency
impl Sync for Dependency
impl Unpin for Dependency
impl UnsafeUnpin for Dependency
impl UnwindSafe for Dependency
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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.