pub type ResolvedRevsetExpression = RevsetExpression<ResolvedExpressionState>;
Expand description
RevsetExpression
that never contains unresolved commit refs.
Aliased Type§
enum ResolvedRevsetExpression {
Show 25 variants
None,
All,
VisibleHeads,
Root,
Commits(Vec<CommitId>),
CommitRef(Infallible),
Ancestors {
heads: Rc<RevsetExpression<ResolvedExpressionState>>,
generation: Range<u64>,
},
Descendants {
roots: Rc<RevsetExpression<ResolvedExpressionState>>,
generation: Range<u64>,
},
Range {
roots: Rc<RevsetExpression<ResolvedExpressionState>>,
heads: Rc<RevsetExpression<ResolvedExpressionState>>,
generation: Range<u64>,
},
DagRange {
roots: Rc<RevsetExpression<ResolvedExpressionState>>,
heads: Rc<RevsetExpression<ResolvedExpressionState>>,
},
Reachable {
sources: Rc<RevsetExpression<ResolvedExpressionState>>,
domain: Rc<RevsetExpression<ResolvedExpressionState>>,
},
Heads(Rc<RevsetExpression<ResolvedExpressionState>>),
Roots(Rc<RevsetExpression<ResolvedExpressionState>>),
ForkPoint(Rc<RevsetExpression<ResolvedExpressionState>>),
Latest {
candidates: Rc<RevsetExpression<ResolvedExpressionState>>,
count: usize,
},
Filter(RevsetFilterPredicate),
AsFilter(Rc<RevsetExpression<ResolvedExpressionState>>),
AtOperation {
operation: Infallible,
candidates: Rc<RevsetExpression<ResolvedExpressionState>>,
},
WithinVisibility {
candidates: Rc<RevsetExpression<ResolvedExpressionState>>,
visible_heads: Vec<CommitId>,
},
Coalesce(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>),
Present(Rc<RevsetExpression<ResolvedExpressionState>>),
NotIn(Rc<RevsetExpression<ResolvedExpressionState>>),
Union(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>),
Intersection(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>),
Difference(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>),
}
Variants§
None
All
VisibleHeads
Root
Commits(Vec<CommitId>)
CommitRef(Infallible)
Ancestors
Descendants
Range
Fields
§
roots: Rc<RevsetExpression<ResolvedExpressionState>>
§
heads: Rc<RevsetExpression<ResolvedExpressionState>>
DagRange
Fields
§
roots: Rc<RevsetExpression<ResolvedExpressionState>>
§
heads: Rc<RevsetExpression<ResolvedExpressionState>>
Reachable
Fields
§
sources: Rc<RevsetExpression<ResolvedExpressionState>>
§
domain: Rc<RevsetExpression<ResolvedExpressionState>>
Heads(Rc<RevsetExpression<ResolvedExpressionState>>)
Roots(Rc<RevsetExpression<ResolvedExpressionState>>)
ForkPoint(Rc<RevsetExpression<ResolvedExpressionState>>)
Latest
Filter(RevsetFilterPredicate)
AsFilter(Rc<RevsetExpression<ResolvedExpressionState>>)
Marker for subtree that should be intersected as filter.
AtOperation
Resolves symbols and visibility at the specified operation.
WithinVisibility
Resolves visibility within the specified repo state.
Fields
§
candidates: Rc<RevsetExpression<ResolvedExpressionState>>
Coalesce(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>)
Present(Rc<RevsetExpression<ResolvedExpressionState>>)
NotIn(Rc<RevsetExpression<ResolvedExpressionState>>)
Union(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>)
Intersection(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>)
Difference(Rc<RevsetExpression<ResolvedExpressionState>>, Rc<RevsetExpression<ResolvedExpressionState>>)
Implementations§
Source§impl ResolvedRevsetExpression
impl ResolvedRevsetExpression
Sourcepub fn evaluate<'index>(
self: Rc<Self>,
repo: &'index dyn Repo,
) -> Result<Box<dyn Revset + 'index>, RevsetEvaluationError>
pub fn evaluate<'index>( self: Rc<Self>, repo: &'index dyn Repo, ) -> Result<Box<dyn Revset + 'index>, RevsetEvaluationError>
Optimizes and evaluates this expression.
Sourcepub fn evaluate_unoptimized<'index>(
&self,
repo: &'index dyn Repo,
) -> Result<Box<dyn Revset + 'index>, RevsetEvaluationError>
pub fn evaluate_unoptimized<'index>( &self, repo: &'index dyn Repo, ) -> Result<Box<dyn Revset + 'index>, RevsetEvaluationError>
Evaluates this expression without optimizing it.
Use this function if self
is already optimized, or to debug
optimization pass.
Sourcepub fn to_backend_expression(&self, repo: &dyn Repo) -> ResolvedExpression
pub fn to_backend_expression(&self, repo: &dyn Repo) -> ResolvedExpression
Transforms this expression to the form which the Index
backend will
process.