environmentVariableCollection.ts ×7

Frontier kind: Code frontier

unlabeled · c_b760c1a69bc1

9 tests · 3643 LOC · 21 files · introduces 0 tests · 29 LOC · 1 file

Introduces — evidence that enters the hierarchy at this concept

Code
7 ranges29 lines · 1 files
Tests
0 tests

Contains — complete concept membership

All code (extent)
518 ranges3643 lines · 21 files · Browse complete extent
All tests (intent)
9 testsBrowse complete intent

Neighbourhood graph

The orange circle is the focus. Violet and green circles are every ancestor and descendant, broader and narrower, at any distance; blue squares and pink diamonds are the introduced files and exact introduced tests of every visible concept, not only the focus's. Arrows point from broader to narrower concepts and bridge only concepts omitted from this view. Undirected links show source or test introduction. Concept and file size follows LOC; exact test nodes use test-count units.

Introduced files, introduced tests, and structurally relevant concept specialization

In the embedded map, ordinary wheel input scrolls the page; use the visible controls to zoom and drag to pan. Open the full-screen map for canvas navigation: wheel pans, Ctrl/Command plus wheel zooms, and arrow keys pan when this region is focused. On touch screens, open the full-screen map to pan or pinch. If JavaScript or WebGL is unavailable, use the native relationship evidence on this page.

Introduced files, introduced tests, and structurally relevant concept specializationenvironmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should only generate workspace specific diffs|occurrence=1 · 0 introduced LOCenvironmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate diffs with added, changed and removed|occurrence=1 · 0 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×2 · 4 introduced LOCenvironmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from the same extension|occurrence=1 · 0 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×1 · 2 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×2 · 5 introduced LOCenvironmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should remove entries in the diff that come after a Replace|occurrence=1 · 0 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×1 · 2 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×7 · 37 introduced LOCenvironmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from when the first entry is added|occurrence=1 · 0 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×1 · 2 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×1 · 2 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×1 · 2 introduced LOCenvironmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection ctor Should keep entries that come after a Prepend or Append type mutators|occurrence=1 · 0 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×2 · 12 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×9 · 57 introduced LOCenvironmentVariableColle…environmentVariableCollection.ts ×11 · 48 introduced LOCenvironmentVariableColle…environmentVariableShared.test|title=EnvironmentVariable - deserializeEnvironmentVariableCollection should construct correctly with 3 arguments|occurrence=1 · 0 introduced LOCenvironmentVariableShare…environmentVariableShared.ts ×1 · 4 introduced LOCenvironmentVariableShare…environmentVariable.ts ×1 · 93 introduced LOCenvironmentVariable.ts ×…environmentVariableShared.ts ×6 · 20 introduced LOCenvironmentVariableShare…uri.test|title=URI URI#file, win-speciale|occurrence=1, charCode.test|title=CharCode has good values|occurrence=1, +2 · 0 introduced LOCuri.test|title=URI URI#f…utils.ts ×3 · 9 introduced LOCutils.ts ×3lifecycle.ts ×2 · 4 introduced LOClifecycle.ts ×2lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×4 · 8 introduced LOClifecycle.ts ×4lifecycle.ts ×6 · 16 introduced LOClifecycle.ts ×6lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1map.ts ×97 · 3334 introduced LOCmap.ts ×97src/vs/base/common/arrays.ts · 949 LOCcommon/arrays.tssrc/vs/base/common/arraysFind.ts · 226 LOCcommon/arraysFind.tssrc/vs/base/common/assert.ts · 91 LOCcommon/assert.tssrc/vs/base/common/charCode.ts · 450 LOCcommon/charCode.tssrc/vs/base/common/collections.ts · 176 LOCcommon/collections.tssrc/vs/base/common/errors.ts · 357 LOCcommon/errors.tssrc/vs/base/common/functional.ts · 32 LOCcommon/functional.tssrc/vs/base/common/iterator.ts · 194 LOCcommon/iterator.tssrc/vs/base/common/lifecycle.ts · 974 LOCcommon/lifecycle.tssrc/vs/base/common/map.ts · 1016 LOCcommon/map.tssrc/vs/base/common/marshallingIds.ts · 33 LOCcommon/marshallingIds.tssrc/vs/base/common/path.ts · 1589 LOCcommon/path.tssrc/vs/base/common/platform.ts · 281 LOCcommon/platform.tssrc/vs/base/common/process.ts · 76 LOCcommon/process.tssrc/vs/base/common/types.ts · 410 LOCcommon/types.tssrc/vs/base/common/uri.ts · 754 LOCcommon/uri.tssrc/vs/base/test/common/utils.ts · 107 LOCcommon/utils.tssrc/vs/nls.ts · 244 LOCvs/nls.tssrc/vs/platform/terminal/common/environmentVariable.ts · 93 LOCcommon/environmentVariab…src/vs/platform/terminal/common/environmentVariableCollection.ts · 287 LOCcommon/environmentVariab…src/vs/platform/terminal/common/environmentVariableShared.ts · 42 LOCcommon/environmentVariab…charCode.test|title=CharCode has good values|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/charCode.test|title=CharCode has good values|occurrence=1charCode.test|title=Char…path.test|title=Paths (Node Implementation) path|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/path.test|title=Paths (Node Implementation) path|occurrence=1path.test|title=Paths (N…uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1uri.test|title=URI File …uri.test|title=URI URI#file, win-speciale|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI URI#file, win-speciale|occurrence=1uri.test|title=URI URI#f…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection ctor Should keep entries that come after a Prepend or Append type mutators|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection ctor Should keep entries that come after a Prepend or Append type mutators|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from a different extension|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from a different extension|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from the same extension|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from the same extension|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from when the first entry is added|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate added diffs from when the first entry is added|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate changed diffs|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate changed diffs|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate diffs with added, changed and removed|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate diffs with added, changed and removed|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate removed diffs|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should generate removed diffs|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should only generate workspace specific diffs|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should only generate workspace specific diffs|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should remove entries in the diff that come after a Replace|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should remove entries in the diff that come after a Replace|occurrence=1environmentVariableColle…environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should return undefined when collectinos are the same|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableCollection.test|title=EnvironmentVariable - MergedEnvironmentVariableCollection diff should return undefined when collectinos are the same|occurrence=1environmentVariableColle…environmentVariableShared.test|title=EnvironmentVariable - deserializeEnvironmentVariableCollection should construct correctly with 3 arguments|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/workbench/contrib/terminal/test/common/environmentVariableShared.test|title=EnvironmentVariable - deserializeEnvironmentVariableCollection should construct correctly with 3 arguments|occurrence=1environmentVariableShare…Focused concept · environmentVariableCollection.ts ×7 · 29 introduced LOCenvironmentVariableColle…

Graph controls are ready.

Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.

Native relationship evidence

Every exact file and test below is linked only from the concept that introduces it.

Introduced tests

Every collected test enters the hierarchy at exactly one concept.

No tests are introduced at this concept. Its intent tests are introduced by other concepts.

Introduced code

Every collected source range enters the hierarchy at exactly one concept.

1 file ranked by introduced lines: 29 introduced LOC across 7 ranges. Expand a file to inspect source; the > gutter marks introduced lines.

src/vs/platform/terminal/common/environmentVariableCollection.ts 29 introduced LOC · 7 ranges

Open complete file

120
121 diff(other: IMergedEnvironmentVariableCollection, scope: EnvironmentVariableScope | undefined): IMergedEnvironmentVariableCollectionDiff | undefined {
122 > const added: Map<string, IExtensionOwnedEnvironmentVariableMutator[]> = new Map(); environmentVariableCollection.ts
123 > const changed: Map<string, IExtensionOwnedEnvironmentVariableMutator[]> = new Map();
124 > const removed: Map<string, IExtensionOwnedEnvironmentVariableMutator[]> = new Map();
125 >
126 > // Find added
127 > other.getVariableMap(scope).forEach((otherMutators, variable) => {
128 > const currentMutators = this.getVariableMap(scope).get(variable);
129 > const result = getMissingMutatorsFromArray(otherMutators, currentMutators);
130 > if (result) {
131 added.set(variable, result);
132 }
134 >
135 > // Find removed
136 > this.getVariableMap(scope).forEach((currentMutators, variable) => {
137 const otherMutators = other.getVariableMap(scope).get(variable);
138 const result = getMissingMutatorsFromArray(currentMutators, otherMutators);
140 removed.set(variable, result);
141 }
143 >
144 > // Find changed
145 > this.getVariableMap(scope).forEach((currentMutators, variable) => {
146 const otherMutators = other.getVariableMap(scope).get(variable);
147 const result = getChangedMutatorsFromArray(currentMutators, otherMutators);
149 changed.set(variable, result);
150 }
152 >
153 > if (added.size === 0 && changed.size === 0 && removed.size === 0) {
154 return undefined;
155 }
156
157 return { added, changed, removed };
159
160 getVariableMap(scope: EnvironmentVariableScope | undefined): Map<string, IExtensionOwnedEnvironmentVariableMutator[]> {
237 }
238
239 > function getMissingMutatorsFromArray( environmentVariableCollection.ts
240 > current: IExtensionOwnedEnvironmentVariableMutator[],
241 > other: IExtensionOwnedEnvironmentVariableMutator[] | undefined
242 > ): IExtensionOwnedEnvironmentVariableMutator[] | undefined {
243 > // If it doesn't exist, all are removed
244 > if (!other) {
245 return current;
246 }