mmtk/plan/immix/
gc_work.rs1use super::global::Immix;
2use crate::policy::gc_work::TraceKind;
3use crate::policy::gc_work::TRACE_KIND_TRANSITIVE_PIN;
4use crate::scheduler::gc_work::PlanProcessEdges;
5use crate::vm::VMBinding;
6
7pub(super) struct ImmixGCWorkContext<VM: VMBinding, const KIND: TraceKind>(
8 std::marker::PhantomData<VM>,
9);
10impl<VM: VMBinding, const KIND: TraceKind> crate::scheduler::GCWorkContext
11 for ImmixGCWorkContext<VM, KIND>
12{
13 type VM = VM;
14 type PlanType = Immix<VM>;
15 type DefaultProcessEdges = PlanProcessEdges<VM, Immix<VM>, KIND>;
16 type PinningProcessEdges = PlanProcessEdges<VM, Immix<VM>, TRACE_KIND_TRANSITIVE_PIN>;
17}