2023-10-27 22:25:09 +08:00
|
|
|
import type { ReactiveEffect } from './effect'
|
|
|
|
import type { ComputedRefImpl } from './computed'
|
2021-07-08 02:13:23 +08:00
|
|
|
|
2023-10-27 22:25:09 +08:00
|
|
|
export type Dep = Map<ReactiveEffect, number> & {
|
|
|
|
cleanup: () => void
|
|
|
|
computed?: ComputedRefImpl<any>
|
2021-07-08 00:33:37 +08:00
|
|
|
}
|
|
|
|
|
2023-10-27 22:25:09 +08:00
|
|
|
export const createDep = (
|
|
|
|
cleanup: () => void,
|
|
|
|
computed?: ComputedRefImpl<any>,
|
|
|
|
): Dep => {
|
|
|
|
const dep = new Map() as Dep
|
|
|
|
dep.cleanup = cleanup
|
|
|
|
dep.computed = computed
|
2021-07-08 02:13:23 +08:00
|
|
|
return dep
|
|
|
|
}
|