Spaces:
Running
Running
| /** | |
| * @author fordacious / fordacious.github.io | |
| */ | |
| function WebGLProperties() { | |
| var properties = new WeakMap(); | |
| function get( object ) { | |
| var map = properties.get( object ); | |
| if ( map === undefined ) { | |
| map = {}; | |
| properties.set( object, map ); | |
| } | |
| return map; | |
| } | |
| function remove( object ) { | |
| properties.delete( object ); | |
| } | |
| function update( object, key, value ) { | |
| properties.get( object )[ key ] = value; | |
| } | |
| function dispose() { | |
| properties = new WeakMap(); | |
| } | |
| return { | |
| get: get, | |
| remove: remove, | |
| update: update, | |
| dispose: dispose | |
| }; | |
| } | |
| export { WebGLProperties }; | |