瀏覽代碼

WebGPURenderer: ChainMap - Clean up. (#28492)

Nathan Bierema 1 年之前
父節點
當前提交
d40187b0da
共有 1 個文件被更改,包括 18 次插入48 次删除
  1. 18 48
      examples/jsm/renderers/common/ChainMap.js

+ 18 - 48
examples/jsm/renderers/common/ChainMap.js

@@ -8,81 +8,51 @@ export default class ChainMap {
 
 	get( keys ) {
 
-		if ( Array.isArray( keys ) ) {
+		let map = this.weakMap;
 
-			let map = this.weakMap;
+		for ( let i = 0; i < keys.length; i ++ ) {
 
-			for ( let i = 0; i < keys.length; i ++ ) {
+			map = map.get( keys[ i ] );
 
-				map = map.get( keys[ i ] );
-
-				if ( map === undefined ) return undefined;
-
-			}
-
-			return map.get( keys[ keys.length - 1 ] );
-
-		} else {
-
-			return super.get( keys );
+			if ( map === undefined ) return undefined;
 
 		}
 
+		return map.get( keys[ keys.length - 1 ] );
+
 	}
 
 	set( keys, value ) {
 
-		if ( Array.isArray( keys ) ) {
-
-			let map = this.weakMap;
-
-			for ( let i = 0; i < keys.length; i ++ ) {
-
-				const key = keys[ i ];
-
-				if ( map.has( key ) === false ) map.set( key, new WeakMap() );
+		let map = this.weakMap;
 
-				map = map.get( key );
+		for ( let i = 0; i < keys.length; i ++ ) {
 
-			}
+			const key = keys[ i ];
 
-			return map.set( keys[ keys.length - 1 ], value );
+			if ( map.has( key ) === false ) map.set( key, new WeakMap() );
 
-		} else {
-
-			return super.set( keys, value );
+			map = map.get( key );
 
 		}
 
+		return map.set( keys[ keys.length - 1 ], value );
+
 	}
 
 	delete( keys ) {
 
-		if ( Array.isArray( keys ) ) {
-
-			let map = this.weakMap;
-
-			for ( let i = 0; i < keys.length; i ++ ) {
-
-				map = map.get( keys[ i ] );
+		let map = this.weakMap;
 
-				if ( map === undefined ) return false;
+		for ( let i = 0; i < keys.length; i ++ ) {
 
-			}
+			map = map.get( keys[ i ] );
 
-			return map.delete( keys[ keys.length - 1 ] );
-
-		} else {
-
-			return super.delete( keys );
+			if ( map === undefined ) return false;
 
 		}
 
-	}
-
-	dispose() {
-
-		this.weakMap.clear();
+		return map.delete( keys[ keys.length - 1 ] );
 
 	}