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

make reference value readonly

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