/// <summary> /// Adds a path to <see cref="EnvironmentAddedPaths"/> or <see cref="EnvironmentDynamicPaths"/>. /// </summary> /// <param name="p">The path to add.</param> public void AddPath(EnvironmentAddedPath p) { if (p.IsDynamicPattern) { if (!_dynamicPaths.Contains(p.Path)) { _dynamicPaths.Add(p.Path); } } else { string expansed = Environment.ExpandEnvironmentVariables(p.Path); foreach (var final in _globber.GetDirectories(expansed).Select(d => d.FullPath)) { if (!_addedPaths.Contains(final)) { _addedPaths.Add(final); } } } }
/// <summary> /// Adds a path to <see cref="EnvironmentAddedPaths"/> or <see cref="EnvironmentDynamicPaths"/>. /// </summary> /// <param name="p">The path to add.</param> public void AddPath( EnvironmentAddedPath p ) { if( p.IsDynamicPattern ) { if( !_dynamicPaths.Contains( p.Path ) ) _dynamicPaths.Add( p.Path ); } else { string expansed = Environment.ExpandEnvironmentVariables( p.Path ); foreach( var final in _globber.GetDirectories( expansed ).Select( d => d.FullPath ) ) { if( !_addedPaths.Contains( final ) ) _addedPaths.Add( final ); } } }