Skip to content
Snippets Groups Projects
Commit 2799ef31 authored by Alexander Rose's avatar Alexander Rose
Browse files

make reference value readonly

parent 86fadc4e
Branches
Tags
No related merge requests found
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @author Alexander Rose <alexander.rose@weirdbyte.de> * @author Alexander Rose <alexander.rose@weirdbyte.de>
*/ */
export interface Reference<T> { value: T, usageCount: number } export interface Reference<T> { readonly value: T, usageCount: number }
export function createReference<T>(value: T, usageCount = 0) { export function createReference<T>(value: T, usageCount = 0) {
return { value, usageCount } return { value, usageCount }
...@@ -12,7 +12,7 @@ export function createReference<T>(value: T, usageCount = 0) { ...@@ -12,7 +12,7 @@ export function createReference<T>(value: T, usageCount = 0) {
export interface ReferenceItem<T> { export interface ReferenceItem<T> {
free: () => void free: () => void
value: T readonly value: T
} }
export function createReferenceItem<T>(ref: Reference<T>) { export function createReferenceItem<T>(ref: Reference<T>) {
...@@ -27,8 +27,7 @@ export function createReferenceItem<T>(ref: Reference<T>) { ...@@ -27,8 +27,7 @@ export function createReferenceItem<T>(ref: Reference<T>) {
export interface ReferenceCache<T, P, C> { export interface ReferenceCache<T, P, C> {
get: (ctx: C, props: P) => ReferenceItem<T> get: (ctx: C, props: P) => ReferenceItem<T>
clear: () => void clear: () => void
count: number readonly count: number
// values: Reference<T>[]
dispose: () => void dispose: () => void
} }
...@@ -60,9 +59,6 @@ export function createReferenceCache<T, P, C>(hashFn: (props: P) => string, ctor ...@@ -60,9 +59,6 @@ export function createReferenceCache<T, P, C>(hashFn: (props: P) => string, ctor
get count () { get count () {
return map.size return map.size
}, },
// get values () {
// return Array.from(map.values())
// },
dispose: () => { dispose: () => {
map.forEach(ref => deleteFn(ref.value)) map.forEach(ref => deleteFn(ref.value))
map.clear() map.clear()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment