Merge from vscode 81d7885dc2e9dc617e1522697a2966bc4025a45d (#5949)

* Merge from vscode 81d7885dc2e9dc617e1522697a2966bc4025a45d

* Fix vs unit tests and hygiene issue

* Fix strict null check issue
This commit is contained in:
Chris LaFreniere
2019-06-10 18:27:09 -07:00
committed by GitHub
parent ff38bc8143
commit d15a3fcc98
926 changed files with 19529 additions and 11383 deletions

View File

@@ -31,26 +31,22 @@ export interface IRegistry {
class RegistryImpl implements IRegistry {
private data: { [id: string]: any; };
constructor() {
this.data = {};
}
private readonly data = new Map<string, any>();
public add(id: string, data: any): void {
Assert.ok(Types.isString(id));
Assert.ok(Types.isObject(data));
Assert.ok(!this.data.hasOwnProperty(id), 'There is already an extension with this id');
Assert.ok(!this.data.has(id), 'There is already an extension with this id');
this.data[id] = data;
this.data.set(id, data);
}
public knows(id: string): boolean {
return this.data.hasOwnProperty(id);
return this.data.has(id);
}
public as(id: string): any {
return this.data[id] || null;
return this.data.get(id) || null;
}
}