Expand description
Formualizer Dependency Graph Engine
Provides incremental formula evaluation with dependency tracking.
Re-exports§
pub use resumable::EvaluationProgress;pub use resumable::EvaluationStop;pub use resumable::IncompleteEvaluation;pub use resumable::RecalcJobError;pub use resumable::RecalcJobOptions;pub use resumable::RecalcOutcome;pub use resumable::SlowUnitKind;pub use resumable::SlowUnitReport;pub use resumable::StepDelta;pub use resumable::StepPhase;pub use resumable::StepProgress;pub use resumable::StepReport;pub use resumable::StopReason;pub use arena::AstNodeId;pub use cancel::CancelToken;pub use eval::CycleTelemetry;pub use eval::Engine;pub use eval::EngineAction;pub use eval::EngineBaselineStats;pub use eval::EvalResult;pub use eval::RecalcPlan;pub use eval::TableMetadata;pub use eval::VirtualDepTelemetry;pub use eval_delta::DeltaMode;pub use eval_delta::EvalDelta;pub use eval_delta::EvalDeltaCompatibilityPolicy;pub use eval_delta::EvalDeltaRecord;pub use eval_delta::TARGET_EVAL_DELTA_VERSION;pub use eval_delta::TargetEvalDelta;pub use formula_ingest::FormulaFamilyGrouper;pub use formula_ingest::FormulaIngestBatch;pub use formula_ingest::FormulaIngestRecord;pub use formula_ingest::FormulaIngestReport;pub use journal::ActionJournal;pub use journal::ArrowOp;pub use journal::ArrowUndoBatch;pub use journal::GraphUndoBatch;pub use graph::FormulaView;pub use graph::snapshot::VertexSnapshot;pub use graph::ChangeEvent;pub use graph::DependencyGraph;pub use graph::DependencyRef;pub use graph::GraphBaselineStats;pub use graph::OperationSummary;pub use graph::StripeKey;pub use graph::StripeType;pub use graph::block_index;pub use resource_ledger::AdmissionResourceBudget;pub use resource_ledger::DeadlineResourceBudget;pub use resource_ledger::DiskScratchPolicy;pub use resource_ledger::EvaluationBudgets;pub use resource_ledger::EvaluationIncompleteReason;pub use resource_ledger::EvaluationResourceConfigDiagnostic;pub use resource_ledger::LegacyResourceConfigDisposition;pub use resource_ledger::OptimizationResourceBudget;pub use resource_ledger::ResourceEnvelope;pub use resource_ledger::ResourceLedgerError;pub use resource_ledger::ResourceLedgerSnapshot;pub use resource_ledger::RetainedResourceBudget;pub use resource_ledger::ScratchResourceBudget;pub use resource_ledger::SemanticResourceBudget;pub use resource_ledger::WorkResourceBudget;pub use resource_observability::EvaluationRequestKind;pub use resource_observability::EvaluationRequestOutcome;pub use resource_observability::EvaluationRequestPhaseTimings;pub use resource_observability::EvaluationResourceBaselineStats;pub use resource_observability::EvaluationResourceClass;pub use resource_observability::EvaluationResourceLedgerRequestStats;pub use resource_observability::EvaluationResourceReason;pub use resource_observability::EvaluationResourceRequestStats;pub use resource_observability::FormulaDirtyLeaseOutcome;pub use resource_observability::FormulaPlaneRoute;pub use resource_observability::FormulaPlaneRouteEvent;pub use resource_observability::FormulaPlaneRoutePhase;pub use resource_observability::FormulaPlaneRouteTransitionReason;pub use resource_observability::FormulaPlaneTopologyCacheOutcome;pub use resource_observability::FormulaPlaneTopologyRequestStats;pub use resource_observability::FormulaPlaneTopologyStrategy;pub use row_visibility::RowVisibilitySource;pub use row_visibility::VisibilityMaskMode;pub use scheduler::Layer;pub use scheduler::Schedule;pub use scheduler::ScheduleUnit;pub use vertex::VertexId;pub use vertex::VertexKind;pub use graph::editor::DataUpdateSummary;pub use graph::editor::EditorError;pub use graph::editor::MetaUpdateSummary;pub use graph::editor::RangeSummary;pub use graph::editor::ShiftSummary;pub use graph::editor::TransactionId;pub use graph::editor::VertexDataPatch;pub use graph::editor::VertexEditor;pub use graph::editor::VertexMeta;pub use graph::editor::VertexMetaPatch;pub use graph::editor::change_log::ChangeLog;pub use graph::editor::change_log::ChangeLogger;pub use graph::editor::change_log::NullChangeLogger;
Modules§
- addr
- Vertex address space.
- arena
- arrow_
ingest - cancel
- Cooperative cancellation for engine calls.
- debug_
views - effects
- Formal effects pipeline for evaluation (ticket 603).
- eval
- eval_
delta - formula_
ingest - graph
- ingest
- ingest_
builder - inspect
- Read-only, engine-native workbook introspection.
- interval_
tree - journal
- Internal action journal types used for atomicity and undo/redo.
- live_
edges - Live-edge collection for statically-cyclic SCC evaluation (Stage 1 of the runtime-cycle-verdicts work; pre-work for RFC #112).
- live_
graph - Local SCC analysis over a recorded live-edge list (Stage 2 of the runtime-cycle-verdicts work, RFC #112).
- lookup_
index_ cache - named_
range - plan
- range_
view - resource_
ledger - resource_
observability - resumable
- Cooperative recalculation with installed work preserved between calls.
- row_
visibility - scheduler
- sheet_
index - sheet_
registry - spill
- Spill interfaces (shim) for reserve/write/commit/rollback lifecycle. Phase 2: Introduce types only; implementation can delegate to current graph methods.
- tuning
- Warmup configuration and tuning parameters
- vertex
- vertex_
store - virtual_
deps
Structs§
- Cycle
Config - Cycle handling configuration (spec:
formualizer-cycle-semantics-spec.md§2). - Eval
Config - Configuration for the evaluation engine
- Formula
Parse Diagnostic - Captured diagnostic for a malformed formula encountered during ingest/graph-build.
- Preparation
Revision - Prepared
Target Graph Report - Resource
Exhaustion Detail - Binding-safe typed resource exhaustion payload.
- Spill
Config - Configuration for spill behavior. Nested under EvalConfig to avoid bloating the top-level.
- Target
Eval Options - Controls that apply to a whole target evaluation: preparation and evaluation. Cancellation and the deadline are hoisted onto the engine for the duration of the call, so every checkpoint in both phases observes them.
- Tombstone
Registry - Workbook
Load Limits - Workbook ingest limits applied by loader backends before they materialize large sheets.
Enums§
- Cycle
Detection - How statically-cyclic SCCs are treated at evaluation time.
- Cycle
Policy - What happens to witnessed (live) cycles under
CycleDetection::Runtime. - Date
System - Deterministic
Mode - Deterministic evaluation configuration.
- Evaluation
Target - Formula
Parse Policy - Policy for handling malformed formulas encountered during workbook ingest.
- Formula
Plane Mode - Formula
Spool Disk Policy - Storage policy for the private formula replay spool used while loading workbooks.
- Numeric
Profile - How the engine combines floating-point numbers where the order of
operations changes the result: the reductions behind
SUM,AVERAGEand the criteria sums, and Excel’s own numeric adjustments. - Opaque
Prepare Policy - Opaque
Reason - Preparation
Outcome - Preparation
Policy - What preparing a formula does with a reference to a sheet or table that does not exist (#454, docs/preparation-error-policy.md).
- Prepare
Scope - Resource
Exhaustion Reason - Stable reason for a resource exhaustion diagnostic.
- Sheet
Index Mode - Spill
Bounds Policy - Spill
Buffer Mode - Spill
Cancellation Policy - Spill
Conflict Policy - Spill
Tiebreaker - Spill
Visibility - Table
Selection - Temporal
Egress - Controls whether temporal-formatted serials leave the engine as native values.
Traits§
- Calc
Observer - Scalability hook reserved for calculation observability. No engine registration or invocation path currently delivers these notifications. Future delivery must catch observer panics and drop that notification without affecting values, completeness diagnostics or engine poison.
Functions§
- new_
engine - Construct a new engine with the given resolver and configuration
Type Aliases§
- Prepare
Targets Options Deprecated - Former name of
TargetEvalOptions. The struct governs the whole call, not only preparation, so it was renamed before the name was frozen by a release. - Request
Id